Maison >Opération et maintenance >exploitation et maintenance Linux >Comment résoudre le problème de redirection sous Linux
(1) Liste des commandes de redirection
Commande | Description |
---|---|
fichier de commande | Redirection la sortie dans le fichier |
commande < ; fichier | redirige l'entrée vers le fichier |
commande >> fichier | redirige la sortie vers le fichier en ajoutant |
n > fichier | définit le descripteur de fichier sur n Le fichier est redirigé vers le fichier |
n >> fichier | redirigera le fichier avec le descripteur de fichier n vers le fichier |
n >& m | affichera le fichier m et n fusionner |
n 4cf788f3fe35575e1efa644c155895cc> (2) Exemple d'analyse [root@localhost ~]# w 20:41:36 up 55 days, 5:17, 1 user, load average: 0.00, 0.01, 0.05 USER TTY FROM LOGIN@ IDLE JCPU PCPU WHAT root pts/0 223.166.20.53 20:24 0.00s 0.05s 0.00s w [root@localshost ~]# w > users #w命令执行后的结果输出到users文件中 [root@localshost ~]# ll -rw-r--r-- 1 root root 204 Jan 3 20:41 users [root@localshost ~]# cat users #查看users文件内容,正是w命令执行后的输出结果 20:41:58 up 55 days, 5:17, 1 user, load average: 0.00, 0.01, 0.05 USER TTY FROM LOGIN@ IDLE JCPU PCPU WHAT root pts/0 223.166.20.53 20:24 6.00s 0.05s 0.00s w [root@localshost ~]# who root pts/0 2021-01-03 20:24 (223.166.20.53) [root@localshost ~]# who > users #将who命令执行结果输出重定向到users文件 [root@localshost ~]# cat users #发现users文件中原先w命令的输出内容被who命令覆盖了 root pts/0 2021-01-03 20:24 (223.166.20.53) [root@localshost ~]# echo "Hello world" >> users #使用>>操作符则会追加在后面输出 [root@localshost ~]# cat users root pts/0 2021-01-03 20:24 (223.166.20.53) Hello world [root@localshost ~]# Remarque : Dans l'exemple ci-dessus, de nombreuses lignes de commande apparaissent avec deux # :
3. Redirection d'entrée1. Analyse des commandesLes commandes Unix peuvent également obtenir des entrées à partir de fichiers. La redirection d'entrée est le signe inférieur à (58c0d18387bb79d4a5c352345b1068c5 file redirige stdout vers file, command < 2. Détails de la commande command < infile > outfile #同时替换输入和输出,执行command,从文件infile读取内容,然后将输出写入到outfile中。 #理解成,从标准输入中获取内容(输入重定向到infile)作为标准输出(输出重定向到outfile)。 5. Here DocumentHere Document est une méthode de redirection spéciale dans Shell, utilisée pour rediriger les entrées vers un script ou un programme Shell interactif. 1. GrammaireSa forme de base est la suivante :command 2>file #stderr 重定向到 file command 2>>file #stderr 追加到 file 文件末尾 command > file 2>&1 command >> file 2>&1 #stdout 和 stderr 合并后重定向到 file command < file1 >file2 #对 stdin 和 stdout 都重定向 #command 命令将 stdin 重定向到 file1,将 stdout 重定向到 file2Remarque : Le délimiteur à la fin de doit être écrit au format haut. Il ne peut y avoir de caractères devant et il ne peut y avoir de caractères à l'intérieur. le dos, y compris les espaces et les retraits de tabulation. Les espaces avant et après le délimiteur initial seront ignorés. 2. Exemple d'analyse EOF est l'abréviation de END Of File, qui signifie un terminateur personnalisé. Puisqu'il peut être personnalisé, EOF n'a pas de valeur fixe et vous pouvez définir un alias à volonté. Par exemple, sous Linux, appuyer sur Ctrl-D peut être utilisé comme EOF à la place. EOF fonctionne généralement avec cat pour générer du texte sur plusieurs lignes. L'exemple est le suivant :command << delimiter document delimiter #作用是将两个 delimiter 之间的内容(document) 作为输入传递给 command。 EOF peut également être personnalisé comme suit : [root@localhost ~]# wc -l << EOF > a > b > c > d > e > EOF 5 #输入内容为5行 [root@localhost ~]# cat << EOF > a > b > c > d > e > f > EOF a b c d e f Lors de l'exécution de la saisie du script, vous pouvez utiliser le formulaire suivant : |
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!