Linuxノート2-リダイレクト、ワイルドカード、環境変数

リダイレクト

標準入力(STDIN)ファイル記述は0です。デフォルト入力はキーボードからです。
標準出力(STDOUT)ファイル記述は1です。デフォルト出力は画面です。
エラー出力(STDERR)ファイル記述は2です。デフォルト出力画面に表示されます
。コマンドを介してサーバーと対話するプロセスでの入力と出力例を以下に示します。

[root@bogon ~]# ls root    // 标准输入
anaconda-ks.cfg  lines.txt  test  test2.txt  test.txt  tstd   // 标准输出
[root@bogon ~]# ls CCC //标准输入
ls: cannot access CCC: No such file or directory  // 错误输出

出力リダイレクト:
コマンド>ファイル標準出力をファイルにリダイレクト(ファイルの元の内容を上書き)
コマンド2>ファイルエラー出力をファイルにリダイレクト(ファイルの元の内容を上書き)
コマンド>>ファイル標準出力をファイルにリダイレクト中(ファイルに追加)
コマンド2 >>ファイルの標準出力をファイルにリダイレクト(ファイルに追加)
コマンド>>ファイル2> $ 1標準出力とエラー出力の両方をファイルに
リダイレクト(ファイルに追加)入力リダイレクト:
コマンド< fileは、ファイルを
コマンドの標準入力として使用します。コマンド<<解像度文字は標準入力から読み取られ、解像度文字が検出された場合にのみ
コマンドが停止します<file 1>ファイル2は、ファイル1を標準として使用します。コマンドの入力とファイル2への出力標準

[root@bogon tmpdir]# man bash > manbash.txt
[root@bogon tmpdir]# echo "hahaha" >test.txt
[root@bogon tmpdir]# cat test.txt
hahaha
[root@bogon tmpdir]# echo "hahah" >> test.txt
[root@bogon tmpdir]# cat test.txt
hahaha
hahah
[root@bogon tmpdir]# cat test.txt |wc -l
2
[root@bogon tmpdir]# wc -l <test.txt
8
[root@bogon tmpdir]# echo <<over
> hi 
> nice to meet you 
> Hi 
> over

コマンドワイルドカード

バッチ操作を実行したい場合がありますが、今回はワイルドカードを使用する必要があります。sdaで始まるすべてのディレクトリ属性の表示など

* 匹配另个或多个字符
?匹配任意单个字符
[0-9]匹配范围内数字
[abc]匹配范围内的任意字符
[root@bogon tmpdir]# ls /dev/vcs*
/dev/vcs   /dev/vcs2  /dev/vcs4  /dev/vcs6  /dev/vcsa1  /dev/vcsa3  /dev/vcsa5
/dev/vcs1  /dev/vcs3  /dev/vcs5  /dev/vcsa  /dev/vcsa2  /dev/vcsa4  /dev/vcsa6
[root@bogon tmpdir]# ls /dev/vcs[0-9]
/dev/vcs1  /dev/vcs2  /dev/vcs3  /dev/vcs4  /dev/vcs5  /dev/vcs6
\(反斜杠) 转义后面单个字符
'' (单引号)转义所有字符
"" (双引号)  变量依然生效
··(反引号 esc下的键)  执行命令语句
[root@bogon tmpdir]# PRICE=5
[root@bogon tmpdir]# echo "price is $PRICE"
price is 5
[root@bogon tmpdir]# echo "price is $$PRICE"
price is 2902PRICE
[root@bogon tmpdir]# echo "price is \$$PRICE"
price is $5
[root@bogon tmpdir]# echo 'price is \$$PRICE'
price is \$$PRICE
[root@bogon tmpdir]# uname -a
Linux bogon 3.10.0-1127.el7.x86_64 #1 SMP Tue Mar 31 23:36:51 UTC 2020 x86_64 x86_64 x86_64 GNU/Linux
[root@bogon tmpdir]# echo echo `uname -a`
echo Linux bogon 3.10.0-1127.el7.x86_64 #1 SMP Tue Mar 31 23:36:51 UTC 2020 x86_64 x86_64 x86_64 GNU/Linux
[root@bogon tmpdir]# 

PATH変数

エイリアスコマンドは、コマンドのエイリアスを設定するために使用されます。形式は「エイリアスエイリアス=コマンド」です。たとえば
、ファイルが誤って上書きされることが心配な場合は、エイリアスcp = "cp-i"を実行できます、ユーザーは、上書きされるたびに
unaliasコマンドをキャンセルするように求められます。エイリアス形式:「unaliasalias」

[root@bogon tmpdir]# alias cp="cp -i"
[root@bogon tmpdir]# unalias cp

Linuxのすべてはファイルであり、コマンドもファイルです。実行するコマンドを入力するときの実行手順:
1。絶対パスコマンドの場合は直接実行します
。2。エイリアスコマンドかどうかを確認
します。3。bash、内部コマンド、外部コマンドで判断した場合。
内部コマンド:インタープリターに属する外部コマンド:インタープリターの
外部のコマンドファイルに依存しない
4. $ PATH変数で定義されたパスからコマンドを見つけて、実行します。
PATH環境変数の表示と変更

[root@bogon tmpdir]# PATH=$PATH:/root
[root@bogon tmpdir]# echo $PATH
/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/opt/apps/jdk/bin:/root/bin:/root

注意深く経験豊富な運用および保守担当者は、繊細なコマンドを使用してLinuxサーバーを確実に引き継ぐことができます。$ PATH変数にディレクトリがあるかどうかを確認してください。

環境変数

Linuxには、次のようにenvを使用して表示できる多くの環境変数があります。

[root@bogon tmpdir]# env
XDG_SESSION_ID=15
HOSTNAME=bogon
TERM=vt100
SHELL=/bin/bash
HISTSIZE=1000

変数の定義と表示
変数の定義:変数名=値

ユーザー定義変数を他のユーザーが使用することはできません。つまり、定義された変数のスコープは現在のユーザーです。
エクスポートを使用して、ローカル変数をグローバル変数にアップグレードできます

[root@bogon tmpdir]# ETC="/etc"
[root@bogon tmpdir]# echo
[root@bogon tmpdir]# echo $ETC
/etc
[root@bogon tmpdir]# su hadoop
[hadoop@bogon tmpdir]$ echo $ETC
[hadoop@bogon tmpdir]$ su root
Password: 
[root@bogon tmpdir]# export ETC
[root@bogon tmpdir]# echo $ETC
[root@bogon tmpdir]# ETC="/etc"
[root@bogon tmpdir]# export ETC
[root@bogon tmpdir]# echo $ETC
/etc
[root@bogon tmpdir]# su hadoop
[hadoop@bogon tmpdir]$ echo $ETC
/etc

おすすめ

転載: blog.csdn.net/zhangxm_qz/article/details/109223575