2017-08-08 14 views
6

テキストファイルの内容をBash変数に読み込み、そのファイルが存在しない場合はエラーメッセージを表示しません。 POSIXでは、私は"No such file or directory"エラーを抑制してファイルを変数に読み込みます

var=$(cat file 2>/dev/null) 

を行うだろう。しかし、私はそれがbashで猫の無駄な使用だと(例えばHow to read a file into a variable in shellで)読みました。

var=$(< file 2>/dev/null) 
var=$(< file) 2>/dev/null 

をしかし、それは最初に既存のファイルを読んでいない、との両方の印刷-bash: file: No such file or directoryは、ファイルが存在しない場合:だから、私はそれらをしようとしています。 これはなぜ機能しないのですか?(特に:?何が完全に最初のものを壊す)作業を何

はこれです:

{ var=$(< file); } 2>/dev/null 

しかし、それは醜いと面倒です。ですから、にはより良い構文がありますか、またはこれは結局のところcatの有効な使用ですか? BASHで

答えて

関連する問題