Natural

           

          [cygwin]cygwin常用命令及find命令說(shuō)明

          Cygwin是一個(gè)用于在Windows上模擬Linux環(huán)境的軟件。

          通過(guò)cygwin,可以在windows環(huán)境下使用linux的程序,像find、tar等一些工具也可以在windows下使用,讓我們可以更方便的管理文件。

          一、cygwin下的一些常見(jiàn)問(wèn)題:
          1、常見(jiàn)問(wèn)題說(shuō)明;
          a、盤(pán)符問(wèn)題;
          cygwin命令行中,“/cygdrive/c”等同于“C:\”。
          b、更改cygwin默認(rèn)路徑;
          新建一個(gè)環(huán)境變量“HOME”,變量值即為你想要的cygwin打開(kāi)時(shí)的默認(rèn)路徑(例如設(shè)為“/cygdrive/d”)。
          c、cygwin warning:MS-DOS style path detected:
          環(huán)境變量中加入“CYGWIN=nodosfilewarning”。

          2、常用的一些命令;
          pwd 顯示當(dāng)前的路徑
          cygpath -dm "`pwd`" 顯示當(dāng)前的完整路徑(即windows格式的路徑)
          cd 改變當(dāng)前路徑,無(wú)參數(shù)時(shí)進(jìn)入對(duì)應(yīng)用戶(hù)的home目錄
          ls 列出當(dāng)前目錄下的文件。此命令有N多參數(shù),比如ls -al
          ps 列出當(dāng)前系統(tǒng)進(jìn)程
          kill 殺死某個(gè)進(jìn)程
          mkdir 建立目錄
          rmdir 刪除目錄
          rm 刪除文件
          mv 文件改名或目錄改名
          man 聯(lián)機(jī)幫助
          less 顯示文件的最末幾行

          ———————————————————————

          ls #以默認(rèn)方式顯示當(dāng)前目錄文件列表
          ls –a #顯示所有文件包括隱藏文件
          ls –l #顯示文件屬性,包括大小,日期,符號(hào)連接,是否可讀寫(xiě)及是否可執(zhí)行
          ls –color=never *.so > obj #不顯示文字顏色,將所有so文件記錄到obj文件中

          ———————————————————————

          cd dir #切換到當(dāng)前目錄下的dir目錄
          cd .. #切換到到上一級(jí)目錄
          cd ../.. #切換到上二級(jí)目錄
          cd ~ #切換到用戶(hù)目錄,比如是root用戶(hù),則切換到/root下

          ———————————————————————
          rm file #刪除某一個(gè)文件
          rm -fr dir #刪除當(dāng)前目錄下叫dir的整個(gè)目錄

          ———————————————————————
          cp source target #將文件source 復(fù)制為 target
          cp /root/source . #將/root下的文件source復(fù)制到當(dāng)前目錄
          cp –av soure_dir target_dir #將整個(gè)目錄復(fù)制,兩目錄完全一樣
          cp –fr source_dir target_dir #將整個(gè)目錄復(fù)制,并且是以非鏈接方式復(fù)制,當(dāng)source目錄帶有符號(hào)鏈接時(shí),兩個(gè)目錄不相同

          ———————————————————————
          mv source target #將文件source更名為target

          ———————————————————————

          二、find命令舉例;
          1、找出當(dāng)前目錄及子目錄下修改日期比你的test.java更近的全部.java文件;
              find . -name '*.java' -newer test.java -print

          2、找出當(dāng)前目錄及子目錄下所有今天你修改過(guò)的java代碼;
              find . -name '*.java' -mtime 0 -print

          3、上面的文件中,哪些使用了awt庫(kù);
              find . -name '*.java' -mtime 0 -print | xargs grep 'java.awt'

          4、找出“C:\”下除了“C:\windows”文件夾之外的所有文件
              find /cygdrive/c -path "/cygdrive/c/windows" -prune -o -print

          5、找出上面文件中所有“.jar”結(jié)尾的文件
              find /cygdrive/c -path "/cygdrive/c/windows" -prune -o -name "*.jar" -print

          6、找出當(dāng)前的src目錄下的".class"文件,并刪除它們;
              find src -name '*.class' | xargs rm
              ps:刪除之前最好先查看一下文件以確認(rèn) find src -name '*.class' | xargs ls -l

          7、刪除當(dāng)前的src目錄下的所有".svn"文件夾;
              find src -name '.svn' | xargs rm -r


          8、只查找當(dāng)前目錄下的文本文件,而不查找當(dāng)前目錄的子目錄
              find . ! -name "." -type d -prune -o -type f -name "*.txt" -print



          三、
          find命令說(shuō)明:                     -----------鏈接:查找命令find、xargs詳述------------
          1、find命令的一般形式為;
          find pathname -options [-print -exec -ok ...]


          2、find命令的參數(shù);

          pathname: find命令所查找的目錄路徑。例如用.來(lái)表示當(dāng)前目錄,用/來(lái)表示系統(tǒng)根目錄。
          -print: 
          find命令將匹配的文件輸出到標(biāo)準(zhǔn)輸出。
          -exec:  
          find命令對(duì)匹配的文件執(zhí)行該參數(shù)所給出的shell命令。相應(yīng)命令的形式為'command' {  } ";,注意{   }和";之間的空格。
          -ok:
                和-exec的作用相同,只不過(guò)以一種更為安全的模式來(lái)執(zhí)行該參數(shù)所給出的shell命令,在執(zhí)行每一個(gè)命令之前,都會(huì)給出提示,讓用戶(hù)來(lái)確定是否執(zhí)行。


          3、find命令選項(xiàng)

          -name

          按照文件名查找文件。

          -perm
          按照文件權(quán)限來(lái)查找文件。

          -prune
          使用這一選項(xiàng)可以使find命令不在當(dāng)前指定的目錄中查找,如果同時(shí)使用-depth選項(xiàng),那么-prune將被find命令忽略。

          -user
          按照文件屬主來(lái)查找文件。

          -group
          按照文件所屬的組來(lái)查找文件。

          -mtime -n +n
          按照文件的更改時(shí)間來(lái)查找文件, - n表示文件更改時(shí)間距現(xiàn)在n天以?xún)?nèi),+ n表示文件更改時(shí)間距現(xiàn)在n天以前。find命令還有-atime和-ctime 選項(xiàng),但它們都和-m time選項(xiàng)。

          -nogroup
          查找無(wú)有效所屬組的文件,即該文件所屬的組在/etc/groups中不存在。

          -nouser
          查找無(wú)有效屬主的文件,即該文件的屬主在/etc/passwd中不存在。

          -newer file1 ! file2
          查找更改時(shí)間比文件file1新但比文件file2舊的文件。

          -type
          查找某一類(lèi)型的文件,諸如:
          b -
          塊設(shè)備文件。
          d -
          目錄。
          c -
          字符設(shè)備文件。
          p -
          管道文件。
          l -
          符號(hào)鏈接文件。
          f -
          普通文件。

          -size n:[c]
          查找文件長(zhǎng)度為n塊的文件,帶有c時(shí)表示文件長(zhǎng)度以字節(jié)計(jì)。
          -depth:    
          在查找文件時(shí),首先查找當(dāng)前目錄中的文件,然后再在其子目錄中查找。
          -fstype:   
          查找位于某一類(lèi)型文件系統(tǒng)中的文件,這些文件系統(tǒng)類(lèi)型通常可以在配置文件/etc/fstab中找到,該配置文件中包含了本系統(tǒng)中有關(guān)文件系統(tǒng)的信息。

          -mount:
          在查找文件時(shí)不跨越文件系統(tǒng)mount點(diǎn)。
          -follow:
          如果find命令遇到符號(hào)鏈接文件,就跟蹤至鏈接所指向的文件。
          -cpio:
          對(duì)匹配的文件使用cpio命令,將這些文件備份到磁帶設(shè)備中。

          另外,下面三個(gè)的區(qū)別:

          -amin n
          查找系統(tǒng)中最后N分鐘訪問(wèn)的文件

          -atime n
          查找系統(tǒng)中最后n*24小時(shí)訪問(wèn)的文件

          -cmin n
          查找系統(tǒng)中最后N分鐘被改變文件狀態(tài)的文件

          -ctime n
          查找系統(tǒng)中最后n*24小時(shí)被改變文件狀態(tài)的文件

          -mmin n
          查找系統(tǒng)中最后N分鐘被改變文件數(shù)據(jù)的文件

          -mtime n
          查找系統(tǒng)中最后n*24小時(shí)被改變文件數(shù)據(jù)的文件


          posted on 2010-08-11 22:00 此號(hào)已被刪 閱讀(15593) 評(píng)論(0)  編輯  收藏 所屬分類(lèi): Cygwin


          只有注冊(cè)用戶(hù)登錄后才能發(fā)表評(píng)論。


          網(wǎng)站導(dǎo)航:
           

          導(dǎo)航

          統(tǒng)計(jì)

          常用鏈接

          留言簿(8)

          隨筆分類(lèi)(83)

          隨筆檔案(78)

          文章檔案(2)

          相冊(cè)

          收藏夾(7)

          最新隨筆

          搜索

          積分與排名

          最新評(píng)論

          閱讀排行榜

          評(píng)論排行榜

          主站蜘蛛池模板: 横峰县| 伊宁市| 张家川| 中阳县| 镶黄旗| 始兴县| 定州市| 卓资县| 大连市| 陵川县| 叶城县| 江达县| 英山县| 莱西市| 辽阳县| 哈密市| 焦作市| 乌审旗| 南川市| 枞阳县| 康平县| 增城市| 黄山市| 昂仁县| 新郑市| 思南县| 安吉县| 清涧县| 长沙市| 谢通门县| 佛学| 柞水县| 康平县| 长兴县| 海盐县| 闸北区| 静安区| 锦州市| 神木县| 龙山县| 丰县|