0
我試圖運行一個bash腳本,它應該放在特定的目錄中。 問題是腳本不會進入最新的文件夾。在Bash腳本中更改目錄
該文件夾的樣子:
[email protected] ~/jdownloader/logs # ls -lha
total 104K
drwxr-xr-x 9 root root 4.0K Nov 30 11:52 .
drwxr-xr-x 14 root root 4.0K Nov 30 11:52 ..
drwxr-xr-x 2 root root 4.0K Nov 30 11:18 1479843940152_Tue, Nov 22, 2016 20.45 +0100
drwxr-xr-x 2 root root 4.0K Nov 30 11:21 1480501204839_Wed, Nov 30, 2016 11.20 +0100
drwxr-xr-x 2 root root 4.0K Nov 30 11:22 1480501242752_Wed, Nov 30, 2016 11.20 +0100
drwxr-xr-x 2 root root 4.0K Nov 30 11:30 1480501308071_Wed, Nov 30, 2016 11.21 +0100
drwxr-xr-x 2 root root 4.0K Nov 30 11:56 1480503116574_Wed, Nov 30, 2016 11.51 +0100
drwxr-xr-x 3 root root 12K Nov 23 11:25 extracting
drwxr-xr-x 2 root root 64K Nov 30 11:22 updatehistory
中的重要片段從我的腳本是:
#!/bin/bash
declare dir=/var/log/scriptlog/jdstate
declare dir2=~/jdownloader/logs
NewFolder=`ls -rt1 ~/jdownloader/logs -I extracting -I updatehistory | tail -1 > /var/log/scriptlog/jdstate/newfolder.log`
OutputNewFolder=`head $dir/newfolder.log -n 1`
cd\ "\"$dir2/$OutputeNewFolder\""
當我嘗試運行他表明我的錯誤,他無法找到的目錄中的腳本。
但是,當我複製/粘貼它,他會去目錄。
任何想法如何可以去目錄?
爲什麼CD後有反斜槓?你爲什麼要逃避雙引號? – 123
我只是試圖逃脫空間()後cd 但它沒有影響任何東西 – Naluga
我認爲你有太多的逃生,你不希望文字引號作爲你的'CD'的一部分,你不想要逃離我不認爲的空間。試試'cd'$ dir2/$ OutputNewFolder「'(同樣,正確拼寫OutputNewFolder - 你有一個額外的'e')。另請參閱U&L網站上的[此相關問題](http://unix.stackexchange.com/questions/16622/bash-cd-to-the-most-recently-modified-child-directory) –