我有兩個文件夾,在這些文件夾中我有一些公用文件。現在我想從第一個文件夾中刪除公共文件。 像我有兩個文件夾名稱folder1和folder2。 現在在folder1我有一個,B,C文件,並在文件夾2我有C,B W,D文件。我想從folder1中刪除常用文件意味着b和c文件。從兩個文件夾中刪除公共文件
i由命令行
diff -ur folder1 folder2
找到的共同文件,但我不能從在Ubuntu命令行所述第一文件夾中刪除公共文件。
我有兩個文件夾,在這些文件夾中我有一些公用文件。現在我想從第一個文件夾中刪除公共文件。 像我有兩個文件夾名稱folder1和folder2。 現在在folder1我有一個,B,C文件,並在文件夾2我有C,B W,D文件。我想從folder1中刪除常用文件意味着b和c文件。從兩個文件夾中刪除公共文件
i由命令行
diff -ur folder1 folder2
找到的共同文件,但我不能從在Ubuntu命令行所述第一文件夾中刪除公共文件。
有一個簡單的解決方案:
for f in `ls -1 folder1`; do rm folder2/$f; done;
find FIRSTDIR SECONDDIR -type f -maxdepth 1 -exec basename {} \; | \
sort | \
uniq -d | \
sed 's_.*_rm FIRSTDIR/\0_' | \
sh
FIRSTDIR
和SECONDDIR
的任何文件(S)(只有在精確的目錄,不遞歸),然後將其刪除的路徑的一部分。rm
線被執行,而且我做推薦離開首先檢查最後一行,檢查將要完成的工作。
不適用於包含空格的文件名稱。在'ls -1 folder1'嘗試了'f;做rm「folder2/$ f」;完成;'但也沒有工作。 – 2014-03-17 16:30:38