Bash - 使用 txt 文件中的目标移动文件
Bash - Moving files using destination from txt file
我有一个文本文件 (log.txt),其中包含我希望文件结束的文件路径列表。
/root/NewDir/Testfile.txt
/root/NewDir/Testfile2.txt
/root/NewDir2/Alsoatest.txt
...
文件当前位于与 log.txt
相同的位置
/root/Dustbin/log.txt
/root/Dustbin/Testfile.txt
/root/Dustbin/Testfile2.txt
/root/Dustbin/Alsoatest.txt
...
我正在尝试创建一个脚本,它可以只获取文件名并将指定的文件移动到 log.txt 文件中指定的位置。
例如:
# restore Testfile.txt
结果应该是 Testfile.txt 从 /root/Dustbin/... 移动到 /root/NewDir/...
我是 bash / shellscript 的新手,我已经尝试研究了好几个小时,但我完全被难住了!
我知道我需要使用 'mv' 函数,但不确定如何通过匹配文件名来使用 log.txt 文件中指定的目标填充目标!
有谁知道或能给我指出正确的方向吗?
试试:
#!/bin/bash
dustbin="/root/Dustbin"
file=""
mv $dustbin/$file $(grep "/$file$" $dustbin/log.txt)
根据您的要求,您可以改进脚本,在 "mv" 之前添加一个 "mkdir",...。
我有一个文本文件 (log.txt),其中包含我希望文件结束的文件路径列表。
/root/NewDir/Testfile.txt
/root/NewDir/Testfile2.txt
/root/NewDir2/Alsoatest.txt
...
文件当前位于与 log.txt
相同的位置/root/Dustbin/log.txt
/root/Dustbin/Testfile.txt
/root/Dustbin/Testfile2.txt
/root/Dustbin/Alsoatest.txt
...
我正在尝试创建一个脚本,它可以只获取文件名并将指定的文件移动到 log.txt 文件中指定的位置。
例如:
# restore Testfile.txt
结果应该是 Testfile.txt 从 /root/Dustbin/... 移动到 /root/NewDir/...
我是 bash / shellscript 的新手,我已经尝试研究了好几个小时,但我完全被难住了! 我知道我需要使用 'mv' 函数,但不确定如何通过匹配文件名来使用 log.txt 文件中指定的目标填充目标!
有谁知道或能给我指出正确的方向吗?
试试:
#!/bin/bash
dustbin="/root/Dustbin"
file=""
mv $dustbin/$file $(grep "/$file$" $dustbin/log.txt)
根据您的要求,您可以改进脚本,在 "mv" 之前添加一个 "mkdir",...。