sedまたは他のユーティリティを使用してpasswdファイルに二重引用符を追加するには:
ソースファイル:
user1:x:1:1:User1:/home/user1:/bin/bash
user2:x:2:2:User2:/home/user2:/bin/bash
user3:x:3:3:User3:/home/user3:/bin/bash
私がしたいこと:
"user1":"x":"1":"1":"User1":"/home/user1":"/bin/bash"
"user2":"x":"2":"2":"User2":"/home/user2":"/bin/bash"
"user3":"x":"3":"3":"User3":"/home/user3":"/bin/bash"
ベストアンサー1
あなたはできます:
sed 's/[^:]*/"&"/g' /etc/passwd
つまり、*
(:
)[^:]
以外のゼロ個以上の()文字シーケンスを引用符で囲みます。
または、二重引用符文字を含むフィールドを正しく引用し(csvスタイル)、ここにヘッダーを追加する専用のcsv処理ツールを使用してください。
mlr --icsvlite --ocsv --implicit-csv-header --fs : --quote-all label \
'User Name,Password,UID,GID,Gecos,Home Directory,Shell' /etc/passwd