七、環境變量PATH、cp命令、mv命令、文檔查看cat、more、less、head、tail
一、環境變量PATH
# echo $PATH,查看哪些目錄在環境變量裏面
將路徑加入到PATH中的方法:
1.直接將路徑加入到PATH中,比如root目錄。命令如下:
# PATH=$PATH:/root
# echo $PATH
/usr/local/sbin:/usr/local/bin:/usr/bin:/root/bin/root
改回原來的變量直接輸入命令:
# PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/root/bin
然後再刷新一下變量:變量立即生效。
# source /etc/profile
2.使用絕對路徑:
PATH目錄裏現在是沒有/root目錄的,如果我將ls移到/root目錄下,當執行ls命令時,系統就會報沒有那個文件或目錄。示例命令:
# mv /usr/bin/ls /root/
# ls
-bash: /usr/bin/ls: 沒有那個文件或目錄
再PATH後可以使用這個命令。
# /root/ls
ananaconda-ks.cfg ls
為了不影響使用,將ls文件更改回來,命令:
# mv /root/ls /usr/bin
加入到PATH後,下次再使用就不生效了。如果想永久生效。輸入命令:
# vi /etc/profile
在配置文件的結尾加上這個目錄的命令:如/root:
PATH=$PATH:/root/
不想要了的話再改回來:
# PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/root/bin
或者把配置文件刪除掉那最後加的一行,再編輯那個配置文件:
# vi /etc/profile
把光標移動到最後一行的末端,再連續敲兩個dd就刪除掉那一行了,再:wq退出來。
echo命令:用於打印,輸出。
二 、cp命令
cp是copy(復制)的簡寫,命令格式為:cp [選項][來源文件][目的文件]。例如將test1復制成test2。
可寫為:cp test1 test2。格式:# cp 源文件 目標文件
常用選項:
-r:復制一個目錄,必須加-r選項,否則不能復制。把目錄拷貝到目錄下,不會問,會直接放到目標目錄下,若目標目錄不存在,會新建一個,並改好名字。復制目錄時源文件的尾巴要加個斜杠,即使目錄不存在也加斜杠。
如:# cp -r /tmp/123/ /tmp/456
-i:安全選項,若遇到已存在的文件,會詢問是否覆蓋,與rm命令類似。在RedHat/VCentos系統中,使用的命令其實就是cp -i,可以用which查看。
若不想它詢問,就使用絕對路徑:
/usr/bin/cp
就不會詢問了。
小實驗:
# cp 123
# touch 111
# touch 222
# cp -i 111 222
cp:是否覆蓋'222'? n
# echo ‘abc'>111
# echo 'def'>222
# cat 111 222
abc
def
此處的touch作訪問的作用,此處echo沒有起到輸出作用,而是分別寫入了文件“111”和“222”。起寫入作用的就是符號“>”,這在Linux中叫做重定向,即把前面產生的輸出寫入到後面的文件中,當使用符號>時,如果文件中有內容,則會刪除文件中原有的內容,而使用符號>>則不會刪除原有的內容;符號>>是追加的意思。再用cat讀取文件。
!$:上一條命令的最後一條參數,即以空格分開的最後一個參數。
三、mv命令(move)
作用:移動或更改文件名。
移動格式:mv [選項] [源文件或目錄] [目標文件或目錄]。
更改文件名格式:mv 原文件名 新文件名。
也可以移動和改名一並進行,格式:mv 原文件名 新的路徑/新文件名。
該命令有如下情況:
a)目標文件是目錄,但該目錄不存在。
b)目標文件是目錄,且該目錄存在。
c)目標文件是文件,且該問價不存在。
d)目標文件是文件,但該文件存在。
當目標文件是目錄時,其存在與否,執行後的結果不一樣。若該目錄存在,則會把源文件或目錄移動到該目錄中。若該目錄不存在,則會把源目錄重命名為給定的目標文件名。
當目標文件是文件時,其存在與否,執行後的結果不一樣。若該文件存在,則會詢問是否覆蓋。若不存在,則會把源文件重命名為給定的目標文件名。
也和cp命令一樣有-i選項。不想詢問就用絕對路徑。
四、文檔查看cat_more_less_head_tail
(一)cat命令
不是單詞簡寫,可以用man cat查看解釋。用於查看文件的內容並顯示在屏幕上。cat後面可以不加選項,直接加文件名。
-n:查看文件時,把行號也顯示在屏幕上。
-A:顯示所有的內容,包括特殊字符。示例:
# cat -A dirb
1111111111$
上例中,若不加-A選項,那麽每行後面的$符號是看不到的。
也可以用cat 文件名>>文件名:把前面文件裏的內容追加到後面的文件裏面去。
tac命令:cat命令的反序寫法,也是顯示文件內容,只不過是反著排序,先顯示最後一行,最後才顯示第一行。
wc -l命令:可以查看一個文件裏有多少行。每運行一次都會增加行數。
(二)more命令
也是用於查看文件內容,後面直接跟文件名。當文件內容太多,一屏幕不能全部顯示,用cat命令會看不到前面的內容,這時可以用more命令。看完一屏幕後,按空格鍵可以看下一屏幕,看完所有內容就會推出。按Ctrl+D可以向上翻屏,按Ctrl+F向下翻屏(同空格)。若想提前退出,按q鍵即可。
(三)less命令
作用和more命令一樣,後面直接跟文件名,但less命令比more功能要多一些。按空格鍵可以翻頁,按j鍵可以向下移動(按一下就向下一行),按k鍵向上移動;也可以用上下方向鍵。在使用more和less查看文件時,可以按一下/鍵,並輸入一個字符串(如root),再回車,就可以查找這個字符串。若查找多個該字符串,按n鍵顯示下一個,按shift+n可以顯示上一個。也可以用?鍵替代/鍵搜索字符串,不同的是,/是在當前行向下搜索,而?是在當前行向上搜索。
shift+G:定位到行首。G:定位到行尾。
(四|head命令
用於顯示文件的前十行,後面直接跟文件名。
-n:顯示文件的前幾行。也可以省略字母n,-後面直接跟數字,數字幾就顯示幾行。
(五)tail命令
和head命令類似,用於查看文件的最後十行,後面直接跟文件名。
-n:顯示文件的最後幾行。也可以省略字母n,-後面直接跟數字,數字幾就顯示幾行。
-f:動態顯示文件的最後十行。若文件內容在不斷增加,使用該選項也很方便直觀。比如tail -f /var/log/messages可以動態、實時的查看文件/var/log/messages中的內容。
七、環境變量PATH、cp命令、mv命令、文檔查看cat、more、less、head、tail