2015-11-08 69 views
0

基本上,如何使這兩個步驟:如何爲`cd`寫一個bash別名,也是`ls`目錄內容之後?

$:/ cd Users 
$:/Users ls 
user1 user2 user3 

一步法:

$/ cd Users 
$:/Users 
user1 user2 user3 

的bash腳本的僞代碼可以是:

after changing directories, pause the input state and take another command 
command('ls') 

編輯 這裏是一個很棒的bash參考 - http://cb.vu/unixtoolbox.xhtml#scripting

編輯-2http://bhami.com/rosetta.html

編輯-3What are the special dollar sign shell variables?

+3

可能重複:http://askubuntu.com/questions/16106/how-can-i-create -an-alias-for-cd-and-ls –

+0

不清楚你的別名應該做什麼,而正常的'cd'不能。此外,別名不贊成使用別名。 –

+0

@ n.m。 'cd'不顯示新目錄的內容。 – chepner

回答

0
alias mycd='cd $(history 1 | sed "s/.*mycd \(.*\)/\1/") && ls #' 
+0

這不能正常工作。對於'mycd somedir',它擴展爲'cd somedir && ls somedir'並抱怨'somedir'不存在。儘管如此,歷史操縱的理念也很完美。 –

+0

這是somedir不存在時的所需行爲。 – Cyrus

+0

不,我不這麼認爲:如果存在'somedir',你的命令會把'cd somedir'放入它,然後發出'ls somedir'而不是'ls'。 DV不是從我,順便說一句。 –