[英]how to extract specific lines from file and append it to another existing file in shell script and then delete from original?
[英]How to delete specific prefix from directory name by shell script
我直接創建了幾個,如下所示
admin_users/
admin_cars/
admin_roles/
admin_.../
... other 8 directories.
現在,我想將這些文件移動到 admin 目錄,並刪除后綴。
users
cars
roles
... other 8 directories.
我怎樣才能做到這一點?
所以,我認為你想刪除前綴“admin”? 如果您確定這將是您的目錄名稱,您可以手動創建目錄 admin。
在那之后,
- 您可以遍歷當前目錄(前提是您從相關目錄運行腳本)
- 找到所有目錄
- 提取下划線后的部分
- 使用它來重命名並在管理目錄中移動。
類似這樣的東西——
#!/bin/bash
for file in `ls -l | grep "^d" | awk '{print $9}'`; do
suff=`echo $file | cut -d '_' -f 2`
echo $suff
mv $file admin/$suff
done
現在,我想將這些文件復制到 admin 目錄,並刪除后綴。
您說過要將這些目錄復制到另一個父目錄。 cp
命令支持定義目標文件名:
cp -r admin_users /path/to/admin/users
您可以為此編寫一個循環。 對於“刪除前綴”部分,說f
是循環中的變量:
kent$ echo $f
admin_users
kent$ echo "/path/to/admin/${f##admin_}"
/path/to/admin/users
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.