国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

Linux:使用for+find查找文件并cp到其他目錄,文件名帶有空格

這篇具有很好參考價值的文章主要介紹了Linux:使用for+find查找文件并cp到其他目錄,文件名帶有空格。希望對大家有所幫助。如果存在錯誤或未考慮完全的地方,請大家不吝賜教,您也可以點擊"舉報違法"按鈕提交疑問。

一、場景描述

在終端窗口中,用shell命令,批量拷貝文件到指定目錄。
我是在Windows系統(tǒng)上,通過git bash終端來執(zhí)行shell命令的。

二、實現(xiàn)過程

命令1

for filepath in `find /d/LearningMaterials/數(shù)學/數(shù)學/高中/一數(shù)/偏基礎(基礎+中檔版)/基礎篇2.0電子版/ -name *無答案*`; do cp $filepath /c/Users/admin/Desktop/高中數(shù)學/基礎版; done

結果:
Linux:使用for+find查找文件并cp到其他目錄,文件名帶有空格,Linux,linux,運維,服務器
于是把find命令單獨拿出來執(zhí)行:

find /d/LearningMaterials/數(shù)學/數(shù)學/高中/一數(shù)/偏基礎(基礎+中檔版)/基礎篇2.0電子版/ -name *無答案*

結果:
Linux:使用for+find查找文件并cp到其他目錄,文件名帶有空格,Linux,linux,運維,服務器
發(fā)現(xiàn)文件路徑和文件名存在空格。

查找解決辦法
復制時,如何處理帶空格的文件路徑或文件名。
查找結果:
使用單引號('')或雙引號("")包裹文件名字。
Linux:使用for+find查找文件并cp到其他目錄,文件名帶有空格,Linux,linux,運維,服務器

命令2

for filepath in `find /d/LearningMaterials/數(shù)學/數(shù)學/高中/一數(shù)/偏基礎(基礎+中檔版)/基礎篇2.0電子版/ -name *無答案*`; do echo "\"$filepath\"" /c/Users/admin/Desktop/高中數(shù)學/基礎版; done

結果:
Linux:使用for+find查找文件并cp到其他目錄,文件名帶有空格,Linux,linux,運維,服務器
發(fā)現(xiàn),文件路徑還是被分割了。
而且,雙引號也成功添加到每個切割的部分上了。說明,語句修改對的,但是,沒達到預期效果。
這時候,我感覺,是在for循環(huán)讀取find結果集時,就已經切割了。
但是,find命令查詢的結果是正常的,沒有切割。

繼續(xù)查找解決辦法
for循環(huán)處理帶空格的字符串。
查找結果∶
更改shell分隔符即可
Linux:使用for+find查找文件并cp到其他目錄,文件名帶有空格,Linux,linux,運維,服務器
上圖代碼:

只需要更改 shell分隔符即可
在for循環(huán)之前修改IFS變量,示例:
OLDIFS="$IFS"  #備份舊的IFS變量
IFS=$'\n'   #修改分隔符為換行符

for i in `cat aaa`  #aaa文件中存放著公鑰
do
echo "$i"
done
IFS="$OLDIFS"  #還原IFS變量

于是,成功解決問題。

三、最終實現(xiàn)

admin@DESKTOP-0DH3J68 MINGW64 /d/LearningMaterials/數(shù)學/數(shù)學/高中/一數(shù)/偏基礎(基礎+中檔版)/基礎篇2.0電子版
$ OLDIFS="$IFS"

admin@DESKTOP-0DH3J68 MINGW64 /d/LearningMaterials/數(shù)學/數(shù)學/高中/一數(shù)/偏基礎(基礎+中檔版)/基礎篇2.0電子版
$ IFS=$'\n'

admin@DESKTOP-0DH3J68 MINGW64 /d/LearningMaterials/數(shù)學/數(shù)學/高中/一數(shù)/偏基礎(基礎+中檔版)/基礎篇2.0電子版
$ for filepath in `find /d/LearningMaterials/數(shù)學/數(shù)學/高中/一數(shù)/偏基礎(基礎+中檔版)/基礎篇2.0電子版/ -name *無答案*`; do cp "$filepath" /c/Users/admin/Desktop/高中數(shù)學/基礎版; done

Linux:使用for+find查找文件并cp到其他目錄,文件名帶有空格,Linux,linux,運維,服務器
所以,命令1的問題的本質在于shell分隔符是空格導致的。而不是文件名中帶有空格導致的問題。因為,find的結果是正常的。但是,經過for循環(huán)之后,出了問題。文章來源地址http://www.zghlxwxcb.cn/news/detail-815559.html

到了這里,關于Linux:使用for+find查找文件并cp到其他目錄,文件名帶有空格的文章就介紹完了。如果您還想了解更多內容,請在右上角搜索TOY模板網以前的文章或繼續(xù)瀏覽下面的相關文章,希望大家以后多多支持TOY模板網!

本文來自互聯(lián)網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。如若轉載,請注明出處: 如若內容造成侵權/違法違規(guī)/事實不符,請點擊違法舉報進行投訴反饋,一經查實,立即刪除!

領支付寶紅包贊助服務器費用

相關文章

  • Linux:find命令簡單使用(查找文件及文件夾)

    find的主要用來查找文件,也可以用于查看文件夾,二者用法類似,使用 -type d ,通過type指定查找文件夾, 如果不指定,是會將包含查找內容的文件和文件夾一起輸出 舉例:查找test目錄位置 -type x :x是查找的文件類型,其類型一般有: 一般正規(guī)文件:f 設備文件:b、c 目錄

    2024年02月11日
    瀏覽(230)
  • Linux命令_grep & 快速查找關鍵字、文件名

    Linux命令_grep & 快速查找關鍵字、文件名

    目錄 1. 語法 1.1. 常用參數(shù) 2. 常見用法 2.1. 查找 2.2. 取反 2.3. 額外輸出上下 2 行 2.4. 額外輸出上面 1 行 2.5. 額外輸出下面 1 行 2.6. 輸出總行數(shù) 2.7. 輸出行號 2.8. 忽略大小寫 2.9. 正則匹配 3.組合使用 4.?文本三劍客其他命令 ? ? ? ? ? ? ? ? ?

    2024年01月17日
    瀏覽(113)
  • linux 再文件夾目錄下,批量替換文件名、文件內容字符串

    基本使用命令 具體使用命令方法 1.替換文件內容 搜索當前目錄下所有.DTA文件,并將文件中字符串\\\"string1\\\",替換為\\\"string2\\\" 2.替換文件名 搜索當前目錄下所有.DTA文件,并將文件名中字符串\\\"string1\\\"替換為\\\"string2\\\". 3.批量替換文件內容 該目錄及子目錄下所有文件,將文件中所有的字符

    2024年02月16日
    瀏覽(98)
  • Linux移動文件夾(文件)到其他文件夾 / 復制到其他文件夾 【cp / mv命令】

    1)將一個文件夾復制到另一個文件夾下(一般復制一個項目的時候,直接使用這個命令) cp -r /home/packageA /home/packageB 運行命令之后packageB文件夾下就有packageA文件夾了。? 2)將一個文件夾下的所有內容復制到另一個文件夾下(這種一般是復制很多小文件的時候使用) cp -r /

    2024年02月06日
    瀏覽(101)
  • Linux從文件中逐行讀取文件名并將匹配的文件復制到指定目錄

    問題應該算挺常見的但是一句話還挺難說清楚,所以百度特別難搜。 場景就是,有一堆以員工名稱命名的文件(名稱可能還有字母數(shù)字等前后綴),現(xiàn)在給定一個員工清單,需要從這些文件中篩選出員工清單上列出的員工的文件,并復制到另外一個目錄中。 輸入: 1. 許多文

    2024年02月10日
    瀏覽(88)
  • Linux cp命令:復制文件和目錄

    cp 命令,主要用來復制文件和目錄,同時借助某些選項,還可以實現(xiàn)復制整個目錄,以及比對兩文件的新舊而予以升級等功能。 cp 命令的基本格式如下: 選項: -a:相當于 -d、-p、-r 選項的集合,這幾個選項我們一一介紹; -d:如果源文件為軟鏈接(對硬鏈接無效),則復制

    2024年02月06日
    瀏覽(94)
  • Linux :: 【基礎指令篇 :: 文件及目錄操作:(7)】:: cp:指定文件或目錄的拷貝及指定拷貝到指定路徑(與重命名)

    前言:本篇是 Linux 基本操作篇章的內容! 筆者使用的環(huán)境是基于騰訊云服務器:CentOS 7.6 64bit。 學習集: C++ 入門到入土!??!學習合集 Linux 從命令到網絡再到內核!學習合集 目錄索引: 1. 基本語法及功能 2. 常用可選項說明 3. 文件基本拷貝操作 - - 3.1 指定文件拷貝到當前

    2024年02月03日
    瀏覽(98)
  • Linux cp命令教程:如何復制文件和目錄(附案例詳解和注意事項)

    cp 命令在Linux中用于復制文件或目錄。它的全稱是 copy ,意為復制。使用 cp 命令,你可以將文件或目錄從一個位置復制到另一個位置。 cp 命令在所有主流的Linux發(fā)行版中都是可用的,包括但不限于Ubuntu, Debian, Fedora, CentOS等。在大多數(shù)系統(tǒng)中, cp 命令是預裝的,無需額外安裝。

    2024年02月03日
    瀏覽(522)
  • Linux基礎命令 - 文件及目錄操作, 打印輸出, 查找命令, 用戶及權限管理, vi的使用等

    vi - 純文本編輯器 vi命令 是UNIX操作系統(tǒng)和類UNIX操作系統(tǒng)中最通用的 全屏幕 純文本編輯器。Linux中的vi編輯器叫 vim ,它是vi的 增強版 (vi Improved),與vi編輯器 完全兼容 ,而且實現(xiàn)了很多 增強功能 。 vi編輯器支持 編輯模式 和 命令模式 ,編輯模式下可以完成文本的編輯功

    2024年02月06日
    瀏覽(122)
  • Linux下查找文件(find、grep命令)

    Linux下查找文件(find、grep命令)

    目錄 一、find命令 1.按文件名 2.按文件類型查詢 3.按照文件大小查找 4.按照文件日期查找 4.1按照創(chuàng)建日期查找 4.2按照修改日期查找 4.3按照訪問日期查找 5.按深度查找 5.1查找起始點以下n層的目錄,不超過n層 ?5.2搜距離起始點n層以下的目錄(即最少n層) 6.高級查找 6.1-exec ?

    2024年01月16日
    瀏覽(721)

覺得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請作者喝杯咖啡吧~博客贊助

支付寶掃一掃領取紅包,優(yōu)惠每天領

二維碼1

領取紅包

二維碼2

領紅包