こんにちは、tanzoです。
今回はLinuxのコマンドを勉強する際に詰まった部分があるので、ご紹介したいと思います。
備忘録程度なので、ご容赦ください。
やりたいこと
以下のコマンドを実行した時、出力結果に謎の改行が入るのを解消したい
コマンド
[yuta@localhost bin]$ ./bolt script run get.sh --targets @ip_info.txt
省略
Started on ユーザ名@IP...
Started on ユーザ名@IP...
Finished on ユーザ名@IP:
← なんでここ一行空いてるんだ?
OpenSSH_8.0p1, OpenSSL 1.1.1g FIPS 21 Apr 2020
省略
get.shファイルの中身
コマンド
[yuta@localhost bin]$ cat get.sh
echo "`ssh -V`"
考えた果てに出た結論
コマンド
[yuta@localhost bin]$ cat get.sh
printf "`ssh -V`" ← echoをprintfに変更した
変更後の実行結果
コマンド
[yuta@localhost bin]$ ./bolt script run get.sh --targets @ip_info.txt
省略
Started on ユーザ名@IP...
Started on ユーザ名@IP...
Finished on ユーザ名@IP:
OpenSSH_8.0p1, OpenSSL 1.1.1g FIPS 21 Apr 2020 ← 改行が無くなってる!
省略
最後に
echoコマンドはダブルクウォーテーションの中は一行で表示されると思ってたけど、「ssh-V」というコマンドとは
相性が悪いみたい。。。。笑
→ 解消したのは良かったけど、なんで解消したかよくわからなかったので、ここはまた勉強しないといけないね。。。笑