![当文件的目录与 pwd 不同时,取消捆绑此处文档的文件](https://linux22.com/image/162796/%E5%BD%93%E6%96%87%E4%BB%B6%E7%9A%84%E7%9B%AE%E5%BD%95%E4%B8%8E%20pwd%20%E4%B8%8D%E5%90%8C%E6%97%B6%EF%BC%8C%E5%8F%96%E6%B6%88%E6%8D%86%E7%BB%91%E6%AD%A4%E5%A4%84%E6%96%87%E6%A1%A3%E7%9A%84%E6%96%87%E4%BB%B6.png)
全部,
我有一个文件(例如,名为捆绑文件.txt)这里的文档存储在一个目录中,该文件如下所示:
cat > a.txt << 'eof'
...
...
...
'eof'
cat > b.txt << 'eof'
...
...
...
'eof'
cat > c.txt << 'eof'
...
...
...
'eof'
我想要联合国- 捆绑此文件,以便创建文件 a.txt、b.txt 和 c.txt与上面原始捆绑文件位于同一目录中。
通常,我只会cd
到这个目录并运行类似的东西csh bundled_file.txt
,但我想执行csh
命令而在我的密码(打印工作目录)。
但是,当从我的密码进行远程执行时,会创建文件 a.txt、b.txt 和 c.txt那里。我不想要这个。
而且,如果你已经这么想了,我确实这么做了不是想要更改文件以表示类似的内容,
cat > /full/file/path/a.txt << 'eof'
...
...
...
'eof'
有谁可以帮助新手吗?
谢谢!
答案1
自答...
假设该文件bundled_file.txt
位于名为test
... 的文件夹中,进一步说我的 pwd 位于上面的目录中,即test
...的父目录
我发现这个,即使它正在更改密码,它也能很好地工作,但它会立即返回到父目录:
在 bash 中,类似 -
(cd ./test && csh bundled_file.txt)
执行此操作,文件a.txt
、b.txt
和c.txt
所有文件都会在文件夹 中创建test
,并且 pwd 在子 shell 之外保持不变。
如果您有更好的答案,请随时回复。