常用的命令的使用方法:
1.echo (printf)
echo - display a line of text
常用選項:
-n:不換行;
-e:使用\所引導的轉義序列生效;
\n:換行
\t:水平製表符
2.cd
Change the shell working directory.
切換工作目錄:
cd [-L|[-P [-e]]] [dir]
cd /PATH/TO/SOMEDIR:將工作目錄切換至參數所代表的目錄;
cd:將工作目錄切換至當前登錄用戶的家目錄;相當於cd ~;
cd -:將工作目錄切換至此前最後一次的工作目錄;
shell提供了兩個變量:
PWD
OLDPWD
注意,在SHELL中獲取變量值的方法:變量名嚴格區分大小寫;
echo ${VAR_NAME}
cd ~USERNAME:將工作目錄切換至指定用戶的家目錄中;
3.pwd
Print the name of the current working directory.
4.ls
ls - list directory contents
注意:目錄的內容是文件名;
ls [OPTION]... [FILE]...
在Linux的文件系統中,所有以"."作爲文件名的起始字符的文件,都是隱藏文件;
常用選項:
-a, --all:顯示所有文件,包括隱藏文件;
-A, --almost-all:顯示除了"."和".."之外的所有文件,包括隱藏文件;
--color[=WHEN]:以不同的顏色來顯示查詢結果;
-d, --directory:顯示目錄本身,而不是目錄中的文件名;
-h, --human-readable:在顯示文件的大小的時候,顯示爲更加易讀的格式;通常與-l選項一同使用;
-l:使用長列表格式顯示文件的詳細屬性;
-rw-------. 1 root root 1458 12月 23 2016 anaconda-ks.cfg
-:表示文件類型;
rw-------:文件的權限位設置;
.:表示該文件是否具有特殊屬性或擴展屬性;
1:表示該文件被硬鏈接的次數;
root:文件的屬主(所有者)
root:文件的屬組
1458:表示文件的大小,在沒有使用-h選項時,其單位爲字節;
12月 23 2016:文件的時間戳之一,表示最後一次被修改的時間;
anaconda-ks.cfg:文件名
對於設備文件:
~]# ls -l /dev/sr0
brw-rw----. 1 root cdrom 11, 0 9月 24 10:50 /dev/sr0
11, 0:major, minor
major:主設備號,用於標識設備類型,進而確定需要加載何種驅動程序;
minor:次設備號,用於標識同一種設備類型中的不同的設備;
設備號默認使用8位二進制表示,所以默認的設備號的範圍是0-255;
-r, --reverse:倒序輸出結果
-R, --recursive:遞歸顯示,如果目標目錄中有子目錄,則遞歸顯示子目錄的內容,依次遞歸下去;
-Z, --context:顯示文件的SELinux安全上下文標籤;
5.mkdir
mkdir - make directories,創建新目錄;
mkdir [OPTION]... DIRECTORY...
-p, --parents:在創建目錄的時候,如果其父目錄不存在,則優先創建之;
-v, --verbose:爲每個被創建的目錄顯示一條信息;
6.rm
rm - remove files or directories
rm [OPTION]... FILE...
-f, --force:暴力,強制刪除;
-r, -R, --recursive:遞歸刪除目錄及目錄中的內容;
7.touch
touch - change file timestamps, 修改文件的時間戳
格式:touch [OPTION]... FILE...
常用選項:
-c, --no-create:不創建任何文件;
-a:僅修改文件的訪問時間戳;
-m:僅修改文件的修改時間戳;
-t STAMP:使用指定的STAMP替換文件的時間戳;
STAMP的格式爲:[[CC]YY]MMDDhhmm[.ss]
額外的,如果沒有指定-c選項,touch命令可以創建出被指定爲參數且不存在的文件;
8.stat
stat - display file or file system status,顯示文件或文件系統的狀態;
格式:stat [OPTION]... FILE...
常用選項:
-c, --format=FORMAT:以指定的格式顯示文件的指定狀態屬性;
9.nano:文本模式下的全屏編輯工具;
nano - Nano's ANOther editor, an enhanced free Pico clone
格式:nano [OPTIONS] [[+LINE,COLUMN] FILE]...
^:脫字符,表示鍵盤上的Ctrl按鍵;
^+o:保存文檔內容;
^+x:退出編輯界面;
10.cat
cat - concatenate files and print on the standard output,連接文件並在標準輸出顯示
格式:cat [OPTION]... [FILE]...
常用選項:
-b, --number-nonblank:對非空白行進行編號輸出;
-n, --number:對所有行編號輸出;
-s, --squeeze-blank:合併連續的空白行;
-E, --show-ends:在行尾以$字符顯示;
tac - concatenate and print files in reverse
格式:tac [OPTION]... [FILE]...
注意:cat或tac命令,如果沒有給出參數,則所有的內容需要通過標準輸入(從鍵盤鍵入)完成;而後可以使用"^+c"或者"^+d"退出即可;
11.head
head - output the first part of files,輸出文件的起始部分;
格式:head [OPTION]... [FILE]...
常用選項:
-c, --bytes=[-]K:以字節爲單位顯示相應長度的內容;
-n, --lines=[-]K:以行爲單位顯示相應長度的內容;
可以使用-#K方式替換-n #K;
K may have a multiplier suffix:b 512, kB 1000, K 1024, MB 1000*1000, M 1024*1024, GB 1000*1000*1000, G 1024*1024*1024, and so on for T, P, E, Z, Y.
注意:如果不使用任何選項,則默認顯示指定文件內容的前10行;如果文件中不足10行,則顯示全部內容;
12.tail
tail - output the last part of files,輸出文件的最終部分;
格式:tail [OPTION]... [FILE]...
常用選項:
-c, --bytes=[-]K:以字節爲單位顯示相應長度的內容;
-n, --lines=[-]K:以行爲單位顯示相應長度的內容;
可以使用-#K方式替換-n #K;
-f, --follow[={name|descriptor}]:監控文件末尾的變化;
13.more
more - file perusal filter for crt viewing,分頁顯示文檔內容,過濾;
格式:more [options] file [...]
交互式編輯方法:
可以使用"/"根據後續給出的字符串組合進行查找過濾;
可以使用"n"找到下一個匹配項;
使用"q"退出more模式;
使用Enter,可以向下翻一行;
使用Space,可以向下翻一頁;
14.less
less - opposite of more
格式:less [options] file [...]
交互式編輯方法:
可以使用"/"或"?"根據後續給出的字符串組合進行查找過濾;
可以使用"n"或"N"找到下一個匹配項;
使用"q"退出more模式;
使用Enter,可以向下翻一行;
使用Space,可以向下翻一頁;
日期和時間相關的命令:
15.date
操作系統時間,簡稱系統時間;使用軟件模式的時鐘記錄的時間;
date - print or set the system date and time
格式:
date [OPTION]... [+FORMAT]
date [-u|--utc|--universal] [MMDDhhmm[[CC]YY][.ss]]
常用選項:
-s, --set=STRING:設置系統時間爲指定的時間;
兩種格式:
1) MMDDHHmm[[CC]YY][.ss]
2) "CCYY-MM-DD HH:mm:ss"或"CCYY/MM/DD HH:mm:ss"
FORMAT:
%F:表示完整的年月日格式,即:YY-mm-dd
%T:表示完整的時分秒格式,及:HH:MM:SS
%Y:表示完整年份
%m:表示月份
%d:表示日期
%H:表示小時
%M:表示分鐘
%S:表示秒鐘
%s:時間戳,從1970-01-01 00:00:00到當前系統時間所經歷的秒數;
注意:1970年1月1日作爲Unix元年;
此時間戳是由32位二進制表示的,所以其表示的最大範圍0~4294967295;
16.clock/hwclock
hwclock - query or set the hardware clock (RTC)
格式:
hwclock [function] [option...]
常用選項:
-s, --hctosys:根據硬件時鐘設置系統時間;
-w, --systohc:根據系統時間設置硬件時鐘;(不推薦)
17.cal
與關機,重啓,註銷有關的命令:
關機:halt, poweroff, shutdown -h TIME, init 0;
重啓:reboot, shutdown -r TIME, init 6;
註銷:exit, logout, ^+d;
18.cp
cp - copy files and directories
格式:cp [OPTION]... [-T] SOURCE DEST:單源複製
cp [OPTION]... SOURCE... DIRECTORY:多源複製
注意:
1) cp命令至少要接兩個參數;
2) 最後一個參數,通常是此次複製的目標;
3) 如果在複製時給出的目標是目錄,則直接將文件複製到指定的目錄中,保留原文件名;如果在複製非目錄文件時,給出的目標時非目錄的文件,則此次操作時複製並改名;
常用選項:
-R, -r, --recursive:遞歸地複製目錄文件;
-d same as --no-dereference --preserve=links
複製的源文件是符號鏈接文件時,-d選項可以保留該符號鏈接文件作爲此次的源文件被複制,而不會複製該符號鏈接文件所指向的那個文件;
-p same as --preserve=mode,ownership,timestamps
複製的源文件中的權限位、所有權及時間戳屬性會保留下來;
-a, --archive same as -dR --preserve=all
相當於-dpr的組合;
-f, --force:如果目標文件已經存在,則強制複製並且不提示;想要使該選項生效,執行cp命令時,需要在前面加上"\",即:# \cp Source_file Destination_file
19.mv
mv - move (rename) files
格式:
mv [OPTION]... [-T] SOURCE DEST:單源移動
mv [OPTION]... SOURCE... DIRECTORY:多源移動
常用選項:
-f, --force:移動文件並強制覆蓋目標位置同名文件;不給提示;
-n, --no-clobber:移動文件時,如果源文件與目標位置中的文件重名,則不移動;