[英]Changing directory in ubuntu with Ruby and a command line tool
#!/home/user/.rvm/rubies/ruby-2.0.0-p353/bin/ruby
case ARGV[0]
when "apache"
exec('cd /etc/apach2')
exec('sudo nano httpd.conf')
#...
end
我正在嘗試制作一個快速的命令行工具,它將用一個單詞為我更改目錄..因此可以從命令行(在ubuntu 12中)進行。 它告訴我不能cd。但是我自己嘗試該命令,它將正常工作。
好的,所以我做到了並且可以正常工作(我在OS X上,但應該相同):
ARGV[0]
when "testme"
system('cd ripple')
system('ls -al')
#...
end
調用system('cd ...
不會更改,將您移動到正在執行.rb文件的當前shell中的該目錄。因此這樣做更有意義:
system('sudo nano /etc/....
全線
我用背tick進行了測試,但對我來說根本不起作用。
我使用exec()
進行了測試,並得到了預期的結果,它只運行一行,僅此而已。 因此,如果只有一個命令要運行,或者使用&&
它們全部鏈接在一起,則exec()
可以工作
exec('ls /etc && sudo nano /etc/....
我會讀這個: http : //rubyquicktips.com/post/5862861056/execute-shell-commands
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.