1. 程式人生 > >linux入門第一階段——操作檔案和目錄的命令

linux入門第一階段——操作檔案和目錄的命令

  1. **

    linux用VI編輯後儲存退出命令是什麼啊?

    首先需要按ESC鍵回到命令模式;

    vi儲存檔案有不同的選項,對應於不同的命令,你可以從下面的命令中選擇一個需要的輸入: :wq 儲存檔案並退出vi :w 儲存檔案但不退出vi

    :w file 將修改另外儲存到file中,不退出vi :q 不儲存檔案,退出vi

    最後回車即可。

    建立目錄以及檔案**

1建立一個data目錄

mkdir /data && ls -ld /data mkdir的使用

2.在/data目錄下建立一個oldboy.txt 檔案

方法一: cd /data/ && vi oldboy.txt 該命令是編輯記事本 ,如果沒有該檔案會建立一個新的檔案並且進行編輯。 方法二:cd /data/ 跳轉到data目錄,可以通過pwd命令來查詢。 touch oldboy.txt 該命令會建立一個檔案,如果該檔案已經存在,只會更改檔案的建立時間,不會更改內容。 方法三:cd /data/ echo > oldboy.txt ll echo “l am oldboy linux” >> oldboy.tx *新增單行文字覆蓋,會清空原來的內容。 方法三 : touch /data/oldboy.txt && ll /data/oldboy.txt

3.為oldboy.txt 增加內容為 I am studying linux.

第一種方法:nano或者vim都可以    vim/nano ldboy.txt    增加   Iam   studying linux.   
拓展:nano [Linux下的Nano命令容](http://www.cnblogs.com/haichuan3000/articles/2125943.html)
 cat test.txt,來檢視剛剛寫入的內容是否成功儲存
第二種方法:echo覆蓋|追加
echo "I am studying linux." >> oldboy.txt
第三種方法cat重定向
cat > oldboy.txt
I am studying linux.
第四種方法批量新增
cat >>oldboy.txt<<QQQ
I am studying linux
QQQ
  1. 把oldboy.txt檔案拷貝到 /tmp目錄下

第一種方法

:rsync rsync -av /data/oldboy.txt /tmp/ 拓展用法

第二種方法: \cp -ap /data/oldboy.txt /tmp/

  • 5.把/daat 目錄移動到/tmp目錄下
  • mv -R /data/ tmp/
  • ls -ld /tmp

6,進入root目錄下的data 目錄,刪除oldboy.txt 方法一: cd /root/data rm -f odboy.txt. 方法二: find /root/data -type f -name “oldboy.txt” |rm -f 7.接著第6題,退回到上一級目錄刪除data目錄 cd … / rm -rf /data *rf是刪除目錄 8.已知檔案test.txt內容為: test liyao oldboy 請給打印出test.txt內容時,不包含oldboy的字串: 建立測試檔案: cat >>test.txt>>QQ test liyao oldboy QQ cat text.txt 第一種方法grep grep -v “oldboy” test.txt 在這裡插入圖片描述

9,建立遞迴,目錄 mkdir -pv /oldboy/test

10,剪下、複製檔案不提示 方法一、取消命令本身的別名\cp /mnt/test.txt /tmp 方法二、使用命令的絕對路徑開解決: /bin/cp /mnt/text.txt /tmp 11.只檢視ett.txt檔案第20到30行內容 seq:列印一個序列的數字 命令例項: seq 2 會如下顯示: 1 2 上方是豎排顯示,橫排顯示需要加-s 中間可以用引號中的空格分割: seq -s " " 5 顯示:1 2 3 4 5 seq 1 2 9 —會顯示13579 中間的2是公差,如果想要倒序顯示可以用通道如:seq 1 2 9|tac 在記事本vi的編輯中 set nu 是顯示行號的命 令 答: 第一種方法 head -30 ett.txt|tail -11 ------顯示的效率不高 第二種方法 sed -n 20,30p ett.txt 小結:sed 擅長輸出行 awk 擅長列 例1:awk ‘{if(NR>19&&NR<31) print $0}’ ett.txt ---------NP是行號的意思,$0是列印整行的意思,$1的意思是列印第一列 例2:awk -F “:” ‘{print $1}’ /etc/password 列印在passwd文件中第一列的檔案 其中-F是分割的意思 , “:”是用它做分割 十二題:分析圖片服務日誌,把日誌(每個圖片訪問次數*圖片大小的綜合)排行,取Top 10,也就是計算每個url 的訪問大小。(本題適用於生產環境應用,這個功能可以用於IDC網站流量頻寬很高,然後通過分析伺服器日誌那些元素佔用流量過大,進而進行優化或裁減該圖片,壓縮JS等措施) 檢測流量大小的問題 答:在這裡插入圖片描述 十三題:把/odboy目錄下及子目錄下所有以副檔名.sh結尾的檔案包含./hostlists.txt的字串全部替換為…/idctest_iplist. 答: 首先我們追加內容到檔案 echo odboylinux >ett.txt 再拷貝檔案到其它的目錄下面 cp ett.txt /etc/ cp ett.txt /opt/ 替換檔案內容 sed s#odboylinux#odboywindows#g ett.txt 現在只更改輸出,並沒有更改原始檔 s 的意思是更改編輯,g的意思是完全更改。 sed -i s#odboylinux#odboywindows#g ett.txt -i 是改變內容 -n 是取消預設輸出 更改所有的檔案需要藉助find命令 fing / -type f -name f -name “ettc.txt”|xargs sed -i s#odboylinux#odboywindows#g 單獨檢視 cat /opt/ettc.txtx 檢視所有的加粗樣式 fing / -type f -name f -name “ettc.txt”|xargs cat

                                                         以上為草稿版