1、創建一個目錄/data 記憶方法:英文make directorys縮寫後就是mkdir。 命令: mkdir /data 或 cd /;mkdir data #提示:使用分號可以在一行內分割兩個命令。 實踐過程: 方法一: [root@oldboy66 ~]# mkdir /data #查看d... ...
1、創建一個目錄/data
記憶方法:英文make directorys縮寫後就是mkdir。
命令:
- mkdir /data
- 或
- cd /;mkdir data
- #提示:使用分號可以在一行內分割兩個命令。
實踐過程:
- 方法一:
- [root@oldboy66 ~]# mkdir /data
- #查看data目錄是否創建成功,ls是list列表的意思,-ld是ls的常用參數,是長格式查看目錄屬性,l表示長格式,d表示目錄
- [root@oldboy66 ~]# ls -ld /data
- drwxr-xr-x. 2 root root 4096 Nov 30 13:40 /data
- 方法二:
- #刪除方法一創建的目錄
- [root@oldboy66 ~]# rm -r /data
- #輸入y表示確認刪除,y是yes的縮寫
- rm: remove directory `/data'? y
- #進入根目錄/下
- [root@oldboy66 ~]# cd /
- #創建data目錄,不帶斜線/,因為已經進入了
- [root@oldboy66 /]# mkdir data
- #查看data目錄本身
- [root@oldboy66 /]# ls -ld data
- drwxr-xr-x. 2 root root 4096 Nov 30 13:44 data
總結:
cd後跟相對路徑或者絕對路徑,表示進入目錄,如果不跟任何東西,會進入當前用戶的家目錄。
相對路徑概念:不從/開始,而是從當前目錄開始,例如:data/,mnt/oldboy。
絕對路徑概念:從/開始的目錄,就叫絕對路徑,例如:/data/,/mnt/oldboy。
cd命令記憶方法:change directory。
mkdir [-mp] [目錄名稱] ß建立目錄
-m:這個參數用來指定要創建目錄的許可權,但是很少用,都會用chmod來處理。
如:mkdir –m 777 /tmp/test,即建立一個許可權為777的目錄。
-p:這個參數用來遞歸創建目錄,mkdir的常用參數。
2、在/data下麵建立一個文件oldboy.txt
命令:
- touch /data/oldboy.txt
- 或
- cd /data;touch oldboy.txt
- #創建文件也可以用echo等,只不過touch是專業的,也可用間接創建文件的命令,如vi,cat等。
- 例如:
- echo > /data/oldboy.txt
- 或
- > /data/oldboy.txt
實踐過程:
- 方法一:
- #在/data目錄下創建oldboy.txt
- [root@oldboy66 data]# touch /data/oldboy.txt
- #查看創建的oldboy.txt
- [root@oldboy66 data]# ls -l /data/oldboy.txt
- -rw-r--r--. 1 root root 0 Nov 30 14:04 /data/oldboy.txt
- 方法二:
- [root@oldboy66 /]# cd /data
- #如果同名文件存在,不會提示也不好覆蓋,會更新文件的時間戳
- [root@oldboy66 data]# touch oldboy.txt
總結:
touch"摸"。touch [文件名] 就是"摸"一下文件,如果文件不存在,就建立新文件,如果存在,就改變文件的訪問時間atime等時間戳信息。
路徑分隔區別:
windows的目錄分隔D:\PIC\oldboy。
linux的目錄分隔/data/。
3、為oldboy.txt增加內容為"I am studying linux"。
方法一:常規編輯方法
執行vi oldboy.txt進入vi編輯器(預設命令模式),點擊a或i進入編輯模式,敲入內容I am studying linux,然後按鍵盤上的esc鍵退出編輯模式(進入到命令模式),最後敲:wq保存並退出。wq解釋write quit。
此方法說明:
vi就是類似記事本一樣的linux下的常用編輯器,如果想功能更豐富可以用vim代替vi,vi/vim的內部有很多的命令技術點,例如i就是insert,進入插入編輯模式的狀態的意思,esc鍵是切換到命令模式,命令模式下可以敲冒號":"在後面才可以接命令參數,例如wq,w是write,q是quit。
vi 編輯器,相當於記事本,有編輯功能,但是較弱。
vim 複製編輯器,相當於emeditor,editplus,notepad++。
快捷鍵:TAB 命令、路徑補全。
方法二:單行或多行文本插入常用命令,內容都是存放到文件的尾部。
- echo "I am studying linux" >>/data/oldboy.txt
實踐過程:
- #特殊的編輯方法,通過echo命令使用單引號把引號的內容通過>>追加到/data/oldboy.txt,註意:是追加不是覆蓋
- [root@oldboy66 data]# echo "I am studying linux" >>/data/oldboy.txt
- #檢查追加的結果
- [root@oldboy66 data]# cat oldboy.txt
- I am studying linux
此法說明:
echo是一個列印輸出內容的一個常用命令,配合">或>>"可以為文件覆蓋及追加內容。">"意思為重定向,會清除文件里所有以前數據,">>"為內容追加,只在文件尾部追加需要的內容,還有一個較複雜不常用的類似命令printf。
特殊字元命令:
>重定向,會清除文件里所有以前的數據,增加
>>追加重定向,
方法三:寫腳本常用,追加多行,內容都放在文件的尾部。
- cat >>/data/oldboy.txt<<EOF
- I am studying linux
- EOF
- #註意:結尾的EOF要頂格寫,EOF也可以用別的字元替代,只要是一對就好。
方法二、方法三為命令行或腳本中常使用的辦法,都很重要。
方法二用於單行文本,方法三可以是多行文件,文本中如果有特殊字元,如$等需要用\轉義才行。
- echo '
- 111
- 222
- 333
- '>>oldboy.txt
方法四:
- [root@oldboy66 data]# cat >>/data/oldboy.txt
- I am studying linux
按ctrl+d或ctrl+c組合鍵兩遍結束編輯。此方法為特殊編輯方法。
總結:
echo是一個列印輸出內容的一個常用命令,配合">"或">>"可以為文件覆蓋或追加內容。echo $PATH列印出PATH的值。
重定向:意思是將"數據傳到其他地方"。將某個命令執行後本應該出現在屏幕的數據,傳輸到其他地方,執行命令時,這個命令可能會通過文件讀入數據,經過處理之後,再將數據輸出到屏幕。
>或1> 輸出重定向:把前面輸出的東西輸入到後邊的文件中,會刪除文件原有內容。
>>或1>> 追加重定向:把前面輸出的對象追加到後邊的文件中,不會刪除文件原有內容。
<或<0 輸入重定向:輸入重定向用於改變命令的輸入,後面指定輸入內容,前面跟文件名
<<或<<0 追加輸入重定向: 後跟字元串,用來表示"輸入結束",也可以ctrl+d來結束輸入。
2> 錯誤重定向:把錯誤信息輸入到後邊的文件中,會刪除文件原有內容。
2>> 錯誤追加重定向:把錯誤信息追加到後邊的文件中,不會刪除文件原有內容。
標準輸入(stdin):代碼為0,使用<或<<,數據流向從右向左。
標準正常輸出(stdout):代碼為1,使用>或>>,數據流向從左向右。
標準錯誤輸出(stderr):代碼為2,使用2>或2>>。
箭頭的方向就是數據流的方向。
特殊寫法:
- echo oldboy 2>a.txt 1>b.txt
- #2>&1 就是把標準錯誤重定向到標準輸出
- echo oldboy &>log.txt
- #也可以用>&
- echo oldboy >log.txt 2>&1
4、把oldboy.txt文件拷貝到/tmp下
命令:
- cd /data
- cp oldboy.txt /tmp/
- 提示:加cp -a,cp,-p保持屬性
總結:
cp [-aifpru] [源文件] [目標文件]
-a:相當於-pdr
-d:若源文件為鏈接文件(link file),則複製鏈接文件屬性而非檔案本身。
-f:強制,若目標檔案已經存在且無法開啟,則移除後再嘗試。
-i:若目標文件已經存在時,在覆蓋時會先詢問。
-p:連同檔案的屬性一起複制過去,而非使用預設屬性。
-r:遞歸,用於複製目錄。
-u:若目標文件存在,則目標文件比源文件舊時才複製。
提示:如果源文件是多個,那麼目的文件在最後,且是目錄。
cp的重要參數apr。