linux提取文件
① linux怎麼取一個文件下的文件
linux的文字系統?指的是linux命令行的界面吧。
1、打開文件夾的方法使用:cd 文件夾 -----進入文件夾,ll ----查看文件夾里的文件
2、打開文件的方法: 編輯文件用 vi 文件名 或者 vim 文件名。 退出按ESC,輸入:q!回車。
查看文件用 cat 文件名 或 less 文件名
② linux 如何提取文件夾名
提取當前文件夾名稱
可以結合使用pwd命令和basename命令,pwd命令返回當前工作路徑,basename命令去掉前導的目錄部分後列印「名稱」。
$ basename `pwd`
注意:pwd兩側為反引號`,作用是運行兩個反引號之間的命令,並且將命令運行的結果返回。
提取當前文件夾的所有子文件夾
可以使用find命令,設置查詢文件類型參數為-type為目錄d,還可以設置-maxdepth參數為1,不查詢二級子目錄。
$ find . -type d -maxdepth 1
③ linux 里怎麼獲取一個文件
因為要裝pl/sql所以要查找tnsnames.ora文件。。看看怎麼查這個文件在Linux下的哪個目錄
find / -name tnsnames.ora
查到:
/opt/app/Oracle/proct/10.2/network/admin/tnsnames.ora
/opt/app/oracle/proct/10.2/network/admin/samples/tnsnames.ora
還可以用locate 來查找
locate tnsnames.ora
結果是:
/opt/app/oracle/proct/10.2/hs/admin/tnsnames.ora.sample
/opt/app/oracle/proct/10.2/network/admin/tnsnames.ora
/opt/app/oracle/proct/10.2/network/admin/samples/tnsnames.ora
一.通過文件名查找法:
舉例說明,假設你忘記了httpd.conf這個文件在系統的哪個目錄 下,甚至在系統的某個地方也不知道,則這是可以使用如下命令:
find / -name httpd.conf
這個命令語法看起來很容易就明白了,就是直接在find後面寫上 -name,表明要求系統按照文件名查找,最後寫上httpd.conf這個目標文件名即可。稍等一會系統會在計算機屏幕上顯示出查找結果列表:
etc/httpd/conf/httpd.conf
這就是httpd.conf這個文件在Linux系統中的完整路徑。查找成功。
如果輸入以上查找命令後系統並沒有顯示出結果,那麼不要以為系統沒有執行find / -name httpd.conf命令,而可能是你的系統中沒有安裝Apache伺服器,這時只要你安裝了ApacheWeb伺服器,然後再使用find / -name httpd.conf就能找到這個配置文件了。
二.無錯誤查找技巧:
在Linux系統中「find」命令是大多數系統用戶都可以使用的命令,並不是ROOT系統管理員的專利。但是普通用戶使用「find」命令時也有可 能遇到這樣的問題,那就是Linux系統中系統管理員ROOT可以把某些文件目錄設置成禁止訪問模式。這樣普通用戶就沒有許可權用「find」命令來查詢這 些目錄或者文件。當普通用戶使用「find」命令來查詢這些文件目錄是,往往會出現"Permissiondenied."(禁止訪問)字樣。系統將無法 查詢到你想要的文件。為了避免這樣的錯誤,我們可是使用轉移錯誤提示的方法嘗試著查找文件,例如輸入:
find / -name access_log 2>/dev/null
這個方法是把查找錯誤提示轉移到特定的目錄中去。系統執行這個命令後,遇到錯誤的信息就直接輸送到stderrstream2 中,access_log2就是表明系統將把錯誤信息輸送到stderrstream2中,/dev/null是一個特殊的文件,表明空的或者錯誤的信 息,這樣查詢到的錯誤信息將被轉移了,不會再顯示了。
在Linux系統查找文件也會遇到這樣一個實際問題。如果我們在整個硬碟,這個系統中查找某個文件就要花費相當長的一段時間,特別是大型Linux系 統和容量較大的硬碟,文件放在套嵌很深的目錄中的時候。如果我們知道了這個文件存放在某個大的目錄中,那麼只要在這個目錄中往下找就能節省很多時間了。使 用find /etc -name httpd.conf就可以解決這個問題。上面的命令就是表示在etc目錄中查詢httpd.conf這個文件。這里再說明一下「/」這個函數符號的含 義,如果輸入「find /」就是表示要求Linux系統在整個ROOT目錄下查找文件,也就是在整個硬碟上查找文件,而「find /etc」就是只在
etc目錄下查找文件。因為「find /etc」表示只在etc目錄下查找文件,所以查找的速度就相應要快很多了。
三.根據部分文件名查找方法:
例如我們知道某個文件包含有srm這3個字母,那麼要找到系統中所有包含有這3個字母的文件是可以實現 的,輸入:
find /etc -name '*srm*'
這個命令表明了Linux系統將在/etc整個目錄中查找所有的包含有srm這3個字母的文件,比如absrmyz,tibc.srm等等符合條件的文件都能顯示出來。如果你還知道這個文件是由srm 這3個字母打頭的,那麼我們還可以省略最前面的星號,命令如下:
find/etc -name 'srm*'
這是只有像srmyz這樣的文件才被查找出來,像absrmyz或者absrm這樣的文件都不符合要求,不被顯示,這樣查找文件的效率和可靠性就大大增強了。
四.根據文件的特徵查詢方法:
如果只知道某個文件的大小,修改日期等特徵也可以使用「find」命令查找出來,這和WINDOWS系統中的「搜索」功能是基本相同的。在微軟的「搜 索」中,「搜索助理」使得搜索文件和文件夾、列印機、用戶以及網路中的其他計算機更加容易。它甚至使在Internet上搜索更加容易。「搜索助理」還包 括一個索引服務,該服務維護了計算機中所有文件的索引,使得搜索速度更快。使用「搜索助理」時,用戶可以指定多個搜索標准。例如,用戶可以按名稱、類型及 大小搜索文件和文件夾。用戶甚至可以搜索包含特定文本的文件。如果用戶正使用Active Directory,這時還可以搜索帶有特定名稱或位置的列印機。
例如我們知道一個Linux文件大小為1,500bytes,那麼我們可是使用如下命令來查詢find /-size
1500c,字元c表明這個要查找的文件的大小是以bytes為單位。如果我們連這個文件的具體大小都不知道,那麼在Linux中還可以進行模糊查找方式 來解決。例如我們輸入find /-size+10000000c這個命令,則標明我們指定系統在根目錄中查找出大於10000000位元組的文件並顯示出來。命令中的「+」是表示要求系 統只列出大於指定大小的文件,而使用「-」則表示要求系統列出小於指定大小的文件。下面的列表就是在Linux使用不同「find"命令後系統所要作出的 查找動作,從中我們很容易看出在Linux中使用「find」命令的方式是很多的,「find」命令查找文件只要靈活應用,絲毫不比在WINDOWS中查 找能力差。
find / -amin -10 # 查找在系統中最後10分鍾訪問的文件
find / -atime -2 # 查找在系統中最後48小時訪問的文件
find / -empty # 查找在系統中為空的文件或者文件夾
find / -group cat # 查找在系統中屬於groupcat的文件
find / -mmin -5 # 查找在系統中最後5分鍾里修改過的文件
find / -mtime -1 #查找在系統中最後24小時里修改過的文件
find / -nouser #查找在系統中屬於作廢用戶的文件
find / -user fred #查找在系統中屬於FRED這個用戶的文件
下面的列表就是對find命令所可以指定文件的特徵進行查找的部分條件。在這里並沒有列舉所有的查找條件,參考有關Linux有關書籍可以知道所有find命令的查找函數。
-amin n
查找系統中最後N分鍾訪問的文件
-atime n
查找系統中最後n*24小時訪問的文件
-cmin n
查找系統中最後N分鍾被改變狀態的文件
-ctime n
查找系統中最後n*24小時被改變狀態的文件
-empty
查找系統中空白的文件,或空白的文件目錄,或目錄中沒有子目錄的文件夾
-false
查找系統中總是錯誤的文件
-fstype type
查找系統中存在於指定文件系統的文件,例如:ext2 .
-gid n
查找系統中文件數字組 ID 為 n的文件
-group gname
查找系統中文件屬於gnam文件組,並且指定組和ID的文件。
需要解決更多linux問題,詳情請看 http://www.linuxprobe.com/chapter-00.html
望採納
④ Linux下怎麼批量提取子文件夾下的文件到父文件夾
mv /users/name/xx/a(換成b,c) /users/name/xx
⑤ Linux如何讀取文件
要讀取一個文件時,linux會先由根目錄/獲取該文件的上層目錄所在的inode,再由該目錄所記錄的文件關聯性獲取文件的inode,最後通過inode內提供的塊指針,來獲取最終的文件內容。
⑥ linux下批量文件內容提取
grep ingcn -rl /assign-path | xargs sed -i 's/ingcn/.ingcn/g'
或
sed -i 's/ingcn/.ingcn/g' `grep ingcn -rl /assign-path`
還有一種比較復雜的寫法:
grep ingcn * -R | awk -F: '{print $1}' | sort | uniq | xargs sed -i 's/ingcn/.ingcn/g'
其中命令awk用於分割字元串、uniq對結果進行除重。
、網路上現成的資料
格式: sed -i s/查找欄位/替換欄位/g `grep 查找欄位 -rl 路徑`
linux sed 批量替換多個文件中的字元串
sed -i s/oldstring/newstring/g `grep oldstring -rl yourdir`
例如:替換/home下所有文件中的.111cn.為111cn.
sed -i s/.111cn./111cn./g `grep .111cn. -rl /home`
exp:sed -i s/shabi/$/g `grep shabi -rl ./`
2、自己額外附加
2.1 將文件1.txt內的文字garden替換成mirGarden
# sed -i s/garden/mirGarden/g
1.txt sed -i 很簡單
2.2 將當前目錄下的所有文件內的garden替換成mirGarden
## sed -i s/garden/mirGarden/g `ls` 其實也就是ls出多個文件名而已
⑦ 怎樣從linux裡面拷貝文件出來
cp
file1
file2
file3
directory
即將文件file1
file2
file3復制到directory
可以使用通配符,比如
cp
file?
*File*
other
directory
將file開頭後面一個字元、包含File字元的文件和other文件復制到directory
如果拷貝目錄,需要-r參數:
cp
-r
...
⑧ 如何提取linux 系統鏡像文件
為了完成該測試,你得有一個 ISO 鏡像文件(我使用 ubuntu-16.10-server-amd64.iso 系統鏡像文件)以及用於掛載和提取 ISO 鏡像文件的目錄。
首先,使用如下命令創建一個掛載目錄來掛載 ISO 鏡像文件:
$ sudo mkdir /mnt/iso
目錄創建完成後,你就可以運行如下命令很容易地掛載 ubuntu-16.10-server-amd64.iso 系統鏡像文件,並查看其中的內容。
$ sudo mount -o loop ubuntu-16.10-server-amd64.iso /mnt/iso
$ ls /mnt/iso/
在 Linux 系統里掛載 ISO 鏡像
現在你就可以進入到掛載目錄 /mnt/iso 里,查看文件或者使用 cp 命令把文件復制到 /tmp 目錄了。
$ cd /mnt/iso
$ sudo cp md5sum.txt /tmp/
$ sudo cp -r ubuntu /tmp/
在 Linux 系統中復制 ISO 鏡像里的文件
注意:-r 選項用於遞歸復制目錄里的內容。如有必要,你也可以監控復制命令的完成進度。