-標準入力は STDIN (/dev/stdin 内)
一般にキーボード入力を指します。シェルのコード番号は 0 です。-標準出力 STDOUT (/dev/stdout 内)
通常、モニターである端末を指します。シェルでのコード名は 1 です。
-標準エラー STDERR、/dev/stderr にあります
も端末を指しますが、エラー メッセージがここに送信される点が異なります。
シェル内のコード名は 2语法:cat [选项] [文件]ログイン後にコピー
意味 | -A | |
---|---|---|
equals-vET | ##-b | |
空ではない出力行番号の場合 | ##-e | |
## と同じです | # -E | ##--show-ends##各行の末尾に「$」を表示 |
--number | 出力のすべての行に番号を付けます | |
--squeeze-blank | 複数の出力を行わないでください空白行 | |
は -vT | ||
と同等です | --show-tabsタブ文字を ^I | |
--show-nonprinting | ## として表示します# LFD と TAB | |
cat の使用例 | 从标准输入创建文件 [root@web setup]# code>cat >1.txt Hello Bash Linux 键盘(快捷键)Ctrl+D 保存文件 [root@web setup]# ls -l 1.txt -rw-r--r-- 1 root root 17 11-02 21:32 1.txt [root@web setup]# cat 1.txt 显示1.txt文本内容。标准输出 Hello Bash Linux [root@web setup]# cat <1.txt Hello Bash Linux [root@web setup]# 使用heredoc来生成文件 注意:粗体部分、here doc可以进行字符串替换 [root@web setup]# cat >2.txt <<EOF > Hello > Bash > Linux > PWD=$(pwd) > EOF [root@web setup]# ls -l 2.txt -rw-r--r-- 1 root root 33 11-02 21:35 2.txt [root@web setup]# cat 2.txt Hello Bash Linux PWD=/root/setup [root@web setup]# 输出行号 [root@web setup]# cat -n 1.txt 1 Hello 2 Bash 3 Linux [root@web setup]# nl 1.txt 1 Hello 2 Bash 3 Linux [root@web setup]# 在bash脚本中把文件内容加载到变量中 [root@web ~]# TEXT=$(cat .bash_profile) [root@web ~]# [root@web ~]# echo "$TEXT" # .bash_profile # Get the aliases and functions if [ -f ~/.bashrc ]; then . ~/.bashrc fi # User specific environment and startup programs PATH=$PATH:$HOME/bin export PATH unset USERNAME [root@web ~]# ログイン後にコピー |
hered document |
EOF
EOF には特別な意味はありません。FOE や OOO などを使用できます (もちろん、 3文字または大文字の制限はありません)。 EOF を他のものに置き換えることができます。これは、コンテンツを標準入力としてプロセスに渡すことを意味します。これら 2 つの識別子を組み合わせることで、複数行の echo コマンドの使用を回避し、実装することができます。複数行の出力結果。
次に、いくつかの一般的な使用方法とその機能を簡単に説明します。
- cat <
- cat >filename、ファイルを作成し、ctrl d を入力として使用して、標準入力をファイル名ファイルに出力します。
- cat >filename <
- その他の記述方法1. ファイルの追加
- # cat <
- 2. ファイルを追加し、書き込み方法を変更します #cat >>test.sh <
3. EOF は単なるマークであり、固定ではありません。ここでの「HHH」は「EOF」の機能を置き換えます。結果は同じです。
4. スクリプトには含まれていません。スクリプトにない場合は、Ctrl D を使用して EOF 識別を出力できます
#cat <<HHH >iii.txt > sdlkfjksl<p> > sdkjflk<br> > asdlfj<code> > HHH
#cat >iii.txtskldjfklj
sdkfjkl
kljkljklj
kljlk
Ctrl D
関連する推奨事項: 「Linux ビデオ チュートリアル
」