linux---常用命令(一)
常用命令
文件與目錄操作
命令 | 解析 |
---|---|
cd /home | 進入 ‘/home’ 目錄 |
cd .. | 返回上一級目錄 |
cd ../.. | 返回上兩級目錄 |
cd - | 返回上次所在目錄 |
cp file1 file2 | 將file1復制為file2 |
cp -a dir1 dir2 | 復制一個目錄 |
cp -a /tmp/dir1 . | 復制一個目錄到當前工作目錄(.代表當前目錄) |
ls | 查看目錄中的文件 |
ls -a | 顯示隱藏文件 |
ls -l | 顯示詳細信息 |
ls -lrt | 按時間顯示文件(l表示詳細列表,r表示反向排序,t表示按時間排序) |
pwd | 顯示工作路徑 |
mkdir dir1 | 創建 ‘dir1’ 目錄 |
mkdir dir1 dir2 | 同時創建兩個目錄 |
mkdir -p /tmp/dir1/dir2 | 創建一個目錄樹 |
mv dir1 dir2 | 移動/重命名一個目錄 |
rm -f file1 | 刪除 ‘file1’ |
rm -rf dir1 | 刪除 ‘dir1’ 目錄及其子目錄內容 |
查看文件內容
命令 | 解析 |
---|---|
cat file1 | 從第一個字節開始正向查看文件的內容 |
head -2 file1 | 查看一個文件的前兩行 |
more file1 | 查看一個長文件的內容 |
tac file1 | 從最後一行開始反向查看一個文件的內容 |
tail -3 file1 | 查看一個文件的最後三行 |
vi file | 打開並瀏覽文件 |
文本內容處理
命令 | 解析 | ||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|
grep str /tmp/test | 在文件 ‘/tmp/test’ 中查找 “str” | ||||||||||||
grep ^str /tmp/test | 在文件 ‘/tmp/test’ 中查找以 “str” 開始的行 | ||||||||||||
grep [0-9] /tmp/test | 查找 ‘/tmp/test’ 文件中所有包含數字的行 | ||||||||||||
grep str -r /tmp/* | 在目錄 ‘/tmp’ 及其子目錄中查找 “str” | ||||||||||||
diff file1 file2 | 找出兩個文件的不同處 | ||||||||||||
sdiff file1 file2 | 以對比的方式顯示兩個文件的不同 | ||||||||||||
vi file |
|
查詢操作
命令 | 解析 |
---|---|
find / -name file1 | 從 ‘/’ 開始進入根文件系統查找文件和目錄 |
find / -user user1 | 查找屬於用戶 ‘user1’ 的文件和目錄 |
find /home/user1 -name *.bin | 在目錄 ‘/ home/user1’ 中查找以 ‘.bin’ 結尾的文件 |
find /usr/bin -type f -atime +100 | 查找在過去100天內未被使用過的執行文件 |
find /usr/bin -type f -mtime -10 | 查找在10天內被創建或者修改過的文件 |
locate *.ps | 尋找以 ‘.ps’ 結尾的文件,先運行 ‘updatedb’ 命令 |
find -name ‘*.[ch]’ | xargs grep -E ‘expr’ | 在當前目錄及其子目錄所有.c和.h文件中查找 ‘expr’ |
find -type f -print0 | xargs -r0 grep -F ‘expr’ | 在當前目錄及其子目錄的常規文件中查找 ‘expr’ |
find -maxdepth 1 -type f | xargs grep -F ‘expr’ | 在當前目錄中查找 ‘expr’ |
壓縮、解壓
命令 | 解析 |
---|---|
bzip2 file1 | 壓縮 file1 |
bunzip2 file1.bz2 | 解壓 file1.bz2 |
gzip file1 | 壓縮 file1 |
gzip -9 file1 | 最大程度壓縮 file1 |
gunzip file1.gz | 解壓 file1.gz |
tar -cvf archive.tar file1 | 把file1打包成 archive.tar(-c: 建立壓縮檔案;-v: 顯示所有過程;-f: 使用檔案名字,是必須的,是最後一個參數) |
tar -cvf archive.tar file1 dir1 | 把 file1,dir1 打包成 archive.tar |
tar -tf archive.tar | 顯示一個包中的內容 |
tar -xvf archive.tar | 釋放一個包 |
tar -xvf archive.tar -C /tmp | 把壓縮包釋放到 /tmp目錄下 |
zip file1.zip file1 | 創建一個zip格式的壓縮包 |
zip -r file1.zip file1 dir1 | 把文件和目錄壓縮成一個zip格式的壓縮包 |
unzip file1.zip | 解壓一個zip格式的壓縮包到當前目錄 |
unzip test.zip -d /tmp/ | 解壓一個zip格式的壓縮包到 /tmp 目錄 |
yum安裝器
命令 | 解析 |
---|---|
yum -y install [package] | 下載並安裝一個rpm包 |
yum localinstall [package.rpm] | 安裝一個rpm包,使用你自己的軟件倉庫解決所有依賴關系 |
yum -y update | 更新當前系統中安裝的所有rpm包 |
yum update [package] | 更新一個rpm包 |
yum remove [package] | 刪除一個rpm包 |
yum list | 列出當前系統中安裝的所有包 |
yum search [package] | 在rpm倉庫中搜尋軟件包 |
yum clean [package] | 清除緩存目錄(/var/cache/yum)下的軟件包 |
yum clean headers | 刪除所有頭文件 |
yum clean all | 刪除所有緩存的包和頭文件 |
網絡相關
命令 | 解析 |
---|---|
ifconfig eth0 | 顯示一個以太網卡的配置 |
ifconfig eth0 192.168.1.1 netmask 255.255.255.0 | 配置網卡的IP地址 |
ifdown eth0 | 禁用 ‘eth0’ 網絡設備 |
ifup eth0 | 啟用 ‘eth0’ 網絡設備 |
iwconfig eth1 | 顯示一個無線網卡的配置 |
iwlist scan | 顯示無線網絡 |
ip addr show | 顯示網卡的IP地址 |
系統相關
命令 | 解析 |
---|---|
su - | 切換到root權限(與su有區別) |
shutdown -h now | 關機 |
shutdown -r now | 重啟 |
top | 羅列使用CPU資源最多的linux任務 (輸入q退出) |
pstree | 以樹狀圖顯示程序 |
man ping | 查看參考手冊(例如ping 命令) |
passwd | 修改密碼 |
df -h | 顯示磁盤的使用情況 |
cal -3 | 顯示前一個月,當前月以及下一個月的月歷 |
cal 10 1988 | 顯示指定月,年的月歷 |
date –date ‘1970-01-01 UTC 1427888888 seconds’ | 把一相對於1970-01-01 00:00的秒數轉換成時間 |
XSheel 5相關操作
窗體快捷鍵
命令 | 解析 |
---|---|
Ctrl + u | 刪除光標之前到行首的字符 |
Ctrl + k | 刪除光標之前到行尾的字符 |
Ctrl + c | 取消當前行輸入的命令,相當於Ctrl + Break |
Ctrl + a | 光標移動到行首(ahead of line),相當於通常的Home鍵 |
Ctrl + e | 光標移動到行尾(end of line) |
Ctrl + f | 光標向前(forward)移動一個字符位置 |
Ctrl + b | 光標往回(backward)移動一個字符位置 |
Ctrl + l | 清屏,相當於執行clear命令 |
Ctrl + r | 顯示:號提示,根據用戶輸入查找相關歷史命令(reverse-i-search) |
Ctrl + w | 刪除從光標位置前到當前所處單詞(word)的開頭 |
Ctrl + t | 交換光標位置前的兩個字符 |
Ctrl + y | 粘貼最後一次被刪除的單詞 |
Ctrl + Alt + d | 顯示桌面 |
Alt + b | 光標往回(backward)移動到前一個單詞 |
Alt + d | 刪除從光標位置到當前所處單詞的末尾 |
Alt + F2 | 運行 |
Alt + F4 | 關閉當前窗口 |
Alt + F9 | 最小化當前窗口 |
Alt + F10 | 最大化當前窗口 |
Alt + Tab | 切換窗口 |
Alt + 左鍵 | 移動窗口(或在最下面的任務欄滾動鼠標滑輪) |
Linux簡介及Ubuntu安裝
Linux,免費開源,多用戶多任務系統。基於Linux有多個版本的衍生。RedHat、Ubuntu、Debian
安裝VMware或VirtualBox虛擬機。具體安裝步驟,找百度。
再安裝Ubuntu。具體安裝步驟,找百度。
安裝完後,可以看到Linux系統的目錄結構,見鏈接http://www.cnblogs.com/laov/p/3409875.html
常用指令
ls 顯示文件或目錄
-l 列出文件詳細信息l(list)
-a 列出當前目錄下所有文件及目錄,包括隱藏的a(all)
mkdir 創建目錄
-p 創建目錄,若無父目錄,則創建p(parent)
cd 切換目錄
touch 創建空文件
echo 創建帶有內容的文件。
cat 查看文件內容
cp 拷貝
mv 移動或重命名
rm 刪除文件
-r 遞歸刪除,可刪除子目錄及文件
-f 強制刪除
find 在文件系統中搜索某文件
wc 統計文本中行數、字數、字符數
grep 在文本文件中查找某個字符串
rmdir 刪除空目錄
tree 樹形結構顯示目錄,需要安裝tree包
pwd 顯示當前目錄
ln 創建鏈接文件
more、less 分頁顯示文本文件內容
head、tail 顯示文件頭、尾內容
ctrl+alt+F1 命令行全屏模式
系統管理命令
stat 顯示指定文件的詳細信息,比ls更詳細
who 顯示在線登陸用戶
whoami 顯示當前操作用戶
hostname 顯示主機名
uname 顯示系統信息
top 動態顯示當前耗費資源最多進程信息
ps 顯示瞬間進程狀態 ps -aux
du 查看目錄大小 du -h /home帶有單位顯示目錄信息
df 查看磁盤大小 df -h 帶有單位顯示磁盤信息
ifconfig 查看網絡情況
ping 測試網絡連通
netstat 顯示網絡狀態信息
man 命令不會用了,找男人 如:man ls
clear 清屏
alias 對命令重命名 如:alias showmeit="ps -aux" ,另外解除使用unaliax showmeit
kill 殺死進程,可以先用ps 或 top命令查看進程的id,然後再用kill命令殺死進程。
打包壓縮相關命令
gzip:
bzip2:
tar: 打包壓縮
-c 歸檔文件
-x 壓縮文件
-z gzip壓縮文件
-j bzip2壓縮文件
-v 顯示壓縮或解壓縮過程 v(view)
-f 使用檔名
例:
tar -cvf /home/abc.tar /home/abc 只打包,不壓縮
tar -zcvf /home/abc.tar.gz /home/abc 打包,並用gzip壓縮
tar -jcvf /home/abc.tar.bz2 /home/abc 打包,並用bzip2壓縮
當然,如果想解壓縮,就直接替換上面的命令 tar -cvf / tar -zcvf / tar -jcvf 中的“c” 換成“x” 就可以了。
關機/重啟機器
shutdown
-r 關機重啟
-h 關機不重啟
now 立刻關機
halt 關機
reboot 重啟
Linux管道
將一個命令的標準輸出作為另一個命令的標準輸入。也就是把幾個命令組合起來使用,後一個命令除以前一個命令的結果。
例:grep -r "close" /home/* | more 在home目錄下所有文件中查找,包括close的文件,並分頁輸出。
Linux軟件包管理
dpkg (Debian Package)管理工具,軟件包名以.deb後綴。這種方法適合系統不能聯網的情況下。
比如安裝tree命令的安裝包,先將tree.deb傳到Linux系統中。再使用如下命令安裝。
sudo dpkg -i tree_1.5.3-1_i386.deb 安裝軟件
sudo dpkg -r tree 卸載軟件
註:將tree.deb傳到Linux系統中,有多種方式。VMwareTool,使用掛載方式;使用winSCP工具等;
APT(Advanced Packaging Tool)高級軟件工具。這種方法適合系統能夠連接互聯網的情況。
依然以tree為例
sudo apt-get install tree 安裝tree
sudo apt-get remove tree 卸載tree
sudo apt-get update 更新軟件
sudo apt-get upgrade
將.rpm文件轉為.deb文件
.rpm為RedHat使用的軟件格式。在Ubuntu下不能直接使用,所以需要轉換一下。
sudo alien abc.rpm
vim使用
vim三種模式:命令模式、插入模式、編輯模式。使用ESC或i或:來切換模式。
命令模式下:
:q 退出
:q! 強制退出
:wq 保存並退出
:set number 顯示行號
:set nonumber 隱藏行號
/apache 在文檔中查找apache 按n跳到下一個,shift+n上一個
yyp 復制光標所在行,並粘貼
h(左移一個字符←)、j(下一行↓)、k(上一行↑)、l(右移一個字符→)
用戶及用戶組管理
/etc/passwd 存儲用戶賬號
/etc/group 存儲組賬號
/etc/shadow 存儲用戶賬號的密碼
/etc/gshadow 存儲用戶組賬號的密碼
useradd 用戶名
userdel 用戶名
adduser 用戶名
groupadd 組名
groupdel 組名
passwd root 給root設置密碼
su root
su - root
/etc/profile 系統環境變量
bash_profile 用戶環境變量
.bashrc 用戶環境變量
su user 切換用戶,加載配置文件.bashrc
su - user 切換用戶,加載配置文件/etc/profile ,加載bash_profile
更改文件的用戶及用戶組
sudo chown [-R] owner[:group] {File|Directory}
例如:還以jdk-7u21-linux-i586.tar.gz為例。屬於用戶hadoop,組hadoop
要想切換此文件所屬的用戶及組。可以使用命令。
sudo chown root:root jdk-7u21-linux-i586.tar.gz
文件權限管理
三種基本權限
R 讀 數值表示為4
W 寫 數值表示為2
X 可執行 數值表示為1
如圖所示,jdk-7u21-linux-i586.tar.gz文件的權限為-rw-rw-r--
-rw-rw-r--一共十個字符,分成四段。
第一個字符“-”表示普通文件;這個位置還可能會出現“l”鏈接;“d”表示目錄
第二三四個字符“rw-”表示當前所屬用戶的權限。 所以用數值表示為4+2=6
第五六七個字符“rw-”表示當前所屬組的權限。 所以用數值表示為4+2=6
第八九十個字符“r--”表示其他用戶權限。 所以用數值表示為2
所以操作此文件的權限用數值表示為662
更改權限
sudo chmod [u所屬用戶 g所屬組 o其他用戶 a所有用戶] [+增加權限 -減少權限] [r w x] 目錄名
例如:有一個文件filename,權限為“-rw-r----x” ,將權限值改為"-rwxrw-r-x",用數值表示為765
sudo chmod u+x g+w o+r filename
上面的例子可以用數值表示
sudo chmod 765 filename
linux---常用命令(一)