2012-07-20 37 views
2

所以我有一個非常簡單的shell腳本,它在個人計算機的hosts文件中輸入IP地址和域名。僅用於「開發目的!」它工作正常,只是輸入IP地址和域名,像這樣在Shell腳本中添加一個選項卡

192.168.53.215dev.env.os 192.168.53.215dev.source.os

如果我把它想輸入這樣的:

192.168.53.215 dev.env.os 192.168.53.215 dev.source.os

所以基本上我希望它添加IP地址和域名之間的空間,可惜我真的不能看着辦吧出。任何幫助將不勝感激,這是一個簡單的腳本,但不應該與一個複雜的腳本混雜。請保持簡單並準確解釋你在做什麼我想了解它沒有爲我完成謝謝!

下面是代碼:

do shell script "/usr/bin/printf \"\\n# Add #####'s ip for Sourcebox\\n192.168.53.215\\dev.env.os\\n192.168.53.215\\dev.source.os\\n\" >> /etc/hosts; /usr/bin/dscacheutil -flushcache" with administrator privileges 
+0

你把你原來的問題描述爲一個純shell問題,只有代碼示例暗示你從另一個框架調用shell(顯然是applescript)。請重新提出問題並提供更多關於您的上下文的詳細信息。 – 2012-08-03 09:49:30

回答

7

在bash腳本使用-e標誌回聲可以讓你的輸出選項卡。

echo -e "this\thas\ttabs" 
+0

這是編譯後 #輸出添加Dyllen的IP爲Sourcebox 192.168.53.215echo -e dev.engage.os 192.168.53.215echo -e dev.source.os 如果我把回聲-e 「嗒嗒」上面的代碼與字符串的方式是一樣的,它在一個不允許的標識符內。如果代碼不在字符串中,這通常會起作用。你能否在我的上面的代碼中使用這個例子。我似乎很想念你說的話。謝謝! – djowinz 2012-07-20 20:47:46

+0

看起來你正在爲MacOS寫這篇文章,我不太確定。我會想象你可以用單引號而不是雙打來包裹你的外部字符串,它應該可以正常工作;這將禁止\ t的插值,直到由內部echo/printf語句執行。 – 2012-07-20 21:11:36

相關問題