日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

用shell脚本批量删除文件名后缀

發布時間:2023/12/18 编程问答 26 豆豆
生活随笔 收集整理的這篇文章主要介紹了 用shell脚本批量删除文件名后缀 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

1、前言

在用腳本編譯或者打包程序時,有時候涉及到一些文件名后綴的處理,在這里介紹的是批量刪除文件名后綴的腳本,使用shell腳本實現。

2.腳本

find $PATH -name "*-rsa2048" | awk -F "-rsa" '{print $1}' | xargs -i -t mv ./{}-rsa2048 ./{}

3、腳本解析

解析:以myfile目錄下有name1-rsa2048 name2-rsa2048 example為例。
(1)“|”:這個符號的作用相當于管道,把上一句命令的輸出當做下一句命令的輸入;
(2)xargs:xargs是Linux中的命令,常與管道(“|”)一起使用。之所以能用到這個命令,關鍵是由于很多命令不支持|管道來傳遞參數,而日常工作中有有這個必要,所以就有了 xargs 命令。
-i 或者是-I,這得看linux支持了,將xargs的每項名稱,一般是一行一行賦值給 {},可以用 {} 代替。
-t 表示先打印命令,然后再執行
例如:
find /sbin -perm +700 |ls -l #這個命令是錯誤的
find /sbin -perm +700 |xargs ls -l #這樣才是正確的
(3)find ./myfile/ -name “*-rsa2048”:查找myfile/路徑下文件名以"-rsa2048"結尾的文件;
(4)awk -F “-rsa” ‘{print $1}’:以"-rsa"為分隔符,將文件名分為兩部分;
(5)xargs -i -t mv ./{}-rsa2048 ./{}:依次將上一步的{print $1}賦值給{},執行mv語句
(6)整句腳本的作用:將myfile目錄下以"-rsa2048"結尾的文件名重新命名,刪除掉"-rsa2048"后綴。

總結

以上是生活随笔為你收集整理的用shell脚本批量删除文件名后缀的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。