[cygwin]cygwin常用命令及find命令說明

來源:互聯網
上載者:User
Cygwin是一個用於在Windows上類比Linux環境的軟體。

通過cygwin,可以在windows環境下使用linux的程式,像find、tar等一些工具也可以在windows下使用,讓我們可以更方便的管理檔案。

一、cygwin下的一些常見問題:
1、常見問題說明;
a、盤符問題;
cygwin命令列中,“/cygdrive/c”等同於“C:/”。
b、更改cygwin預設路徑;
建立一個環境變數“HOME”,變數值即為你想要的cygwin開啟時的預設路徑(例如設為“/cygdrive/d”)。

2、常用的一些命令;
pwd 顯示當前的路徑
cygpath -dm "`pwd`" 顯示當前的完整路徑(即windows格式的路徑)
cd 改變當前路徑,無參數時進入對應使用者的home目錄
ls 列出目前的目錄下的檔案。此命令有N多參數,比如ls -al
ps 列出當前系統進程
kill 殺死某個進程
mkdir 建立目錄
rmdir 刪除目錄
rm 刪除檔案
mv 檔案改名或目錄改名
man 線上說明
less 顯示檔案的最末幾行

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

ls #以預設顯示目前的目錄檔案清單
ls –a #顯示所有檔案包括隱藏檔案
ls –l #顯示檔案屬性,包括大小,日期,符號串連,是否可讀寫及是否可執行
ls –color=never *.so > obj #不顯示文字顏色,將所有so檔案記錄到obj檔案中

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

cd dir #切換到目前的目錄下的dir目錄
cd .. #切換到到上一級目錄
cd ../.. #切換到上二級目錄
cd ~ #切換到使用者目錄,比如是root使用者,則切換到/root下

———————————————————————
rm file #刪除某一個檔案
rm -fr dir #刪除目前的目錄下叫dir的整個目錄

———————————————————————
cp source target #將檔案source 複製為 target
cp /root/source . #將/root下的檔案source複製到目前的目錄
cp –av soure_dir target_dir #將整個目錄複寫,兩目錄完全一樣
cp –fr source_dir target_dir #將整個目錄複寫,並且是以非連結方式複製,當source目錄帶有符號連結時,兩個目錄不相同

———————————————————————
mv source target #將檔案source更名為target

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

二、find命令舉例;
1、找出目前的目錄及子目錄下修改日期比你的test.java更近的全部.java檔案;
    find . -name '*.java' -newer test.java -print

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

3、上面的檔案中,哪些使用了awt庫;
    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”結尾的檔案
    find /cygdrive/c -path "/cygdrive/c/windows" -prune -o -name "*.jar" -print

6、找出當前的src目錄下的".class"檔案,並刪除它們;
    find src -name '*.class' | xargs rm
    ps:刪除之前最好先查看一下檔案以確認 find src -name '*.class' | xargs ls -l

7、刪除當前的src目錄下的所有".svn"檔案夾;
    find src -name '.svn' | xargs rm -r


三、
find命令說明:                     -----------連結:尋找命令find、xargs詳述------------
1、find命令的一般形式為;

find pathname -options [-print -exec -ok ...]


2、find命令的參數;

pathname: find命令所尋找的目錄路徑。例如用.來表示目前的目錄,用/來表示系統根目錄。
-print: 
find命令將匹配的檔案輸出到標準輸出。
-exec:  
find命令對匹配的檔案執行該參數所給出的shell命令。相應命令的形式為'command' {  } ";,注意{   }和";之間的空格。
-ok:
      和-exec的作用相同,只不過以一種更為安全的模式來執行該參數所給出的shell命令,在執行每一個命令之前,都會給出提示,讓使用者來確定是否執行。


3、find命令選項

-name

按照檔案名稱尋找檔案。

-perm
按照檔案許可權來尋找檔案。

-prune
使用這一選項可以使find命令不在當前指定的目錄中尋找,如果同時使用-depth選項,那麼-prune將被find命令忽略。

-user
按照檔案屬主來尋找檔案。

-group
按照檔案所屬的組來尋找檔案。

-mtime -n +n
按照檔案的更改時間來尋找檔案, - n表示檔案更改時間距現在n天以內,+ n表示檔案更改時間距現在n天以前。find命令還有-atime和-ctime 選項,但它們都和-m time選項。

-nogroup
尋找無有效所屬組的檔案,即該檔案所屬的組在/etc/groups中不存在。

-nouser
尋找無有效屬主的檔案,即該檔案的屬主在/etc/passwd中不存在。

-newer file1 ! file2
尋找更改時間比檔案file1新但比檔案file2舊的檔案。

-type
尋找某一類型的檔案,諸如:
b -
塊裝置檔案。
d -
目錄。
c -
字元裝置檔案。
p -
管道檔案。
l -
符號連結檔案。
f -
普通檔案。

-size n:[c] 尋找檔案長度為n塊的檔案,帶有c時表示檔案長度以位元組計。
-depth:    
在尋找檔案時,首先尋找目前的目錄中的檔案,然後再在其子目錄中尋找。
-fstype:   
尋找位於某一類型檔案系統中的檔案,這些檔案系統類型通常可以在設定檔/etc/fstab中找到,該設定檔中包含了本系統中有關檔案系統的資訊。

-mount:
在尋找檔案時不跨越檔案系統mount點。
-follow:
如果find命令遇到符號連結檔案,就跟蹤至連結所指向的檔案。
-cpio:
對匹配的檔案使用cpio命令,將這些檔案備份到磁帶裝置中。

另外,下面三個的區別:

-amin n
尋找系統中最後N分鐘訪問的檔案

-atime n
尋找系統中最後n*24小時訪問的檔案

-cmin n
尋找系統中最後N分鐘被改變檔案狀態的檔案

-ctime n
尋找系統中最後n*24小時被改變檔案狀態的檔案

-mmin n
尋找系統中最後N分鐘被改變檔案資料的檔案

-mtime n
尋找系統中最後n*24小時被改變檔案資料的檔案
http://www.blogjava.net/Man/archive/2010/08/11/328574.html

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.