Grundlegende Verwendung von Shell

Shell ist ein in C-Sprache geschriebenes Programm, das eine Brücke für Benutzer zur Verwendung von Linux darstellt. Shell ist sowohl eine Befehlssprache als auch eine Programmiersprache.

Shell bezieht sich auf ein Anwendungsprogramm, das eine Schnittstelle bereitstellt, über die Benutzer auf die Dienste des Betriebssystemkerns zugreifen.

Ken Thompsons sh ist die erste Unix-Shell, und Windows Explorer ist eine typische Shell mit grafischer Benutzeroberfläche.

1. Shell-Skript

Shell-Skript (Shell-Skript) ist ein Skriptprogramm, das für die Shell geschrieben wurde.

Die in der Branche erwähnte Shell bezieht sich normalerweise auf Shell-Skripte, aber die Leser sollten wissen, dass Shell und Shell-Skript zwei verschiedene Konzepte sind.

Aus üblichen Gründen bezieht sich der Begriff „Shell-Programmierung“ in diesem Artikel der Kürze halber auf die Shell-Script-Programmierung, nicht auf die Entwicklungs-Shell selbst.

2. Shell-Umgebung

Shell-Programmierung ist dasselbe wie JavaScript- und PHP-Programmierung, solange es einen Texteditor gibt, der Code schreiben kann, und einen Skript-Interpreter, der interpretieren und ausführen kann.

Es gibt viele Arten von Linux-Shells, die häufigsten sind:

  • Bourne-Shell (/usr/bin/sh oder /bin/sh)
  • Bourne Again Shell (/bin/bash)
  • C-Shell (/usr/bin/csh)
  • K-Shell (/usr/bin/ksh)
  • Shell für Root (/sbin/sh)

3. Das erste Shell-Skript

Öffnen Sie einen Texteditor (Sie können den Befehl vi/vim verwenden, um eine Datei zu erstellen), erstellen Sie eine neue Datei test.sh, die Erweiterung ist sh (sh steht für Shell), die Erweiterung hat keinen Einfluss auf die Skriptausführung, kennen Sie einfach die Name, wenn Sie php zum Schreiben von Shell-Skripten verwenden, verwenden Sie einfach php als Erweiterung.

Geben Sie einen Code ein, die erste Zeile sieht normalerweise so aus:

#!/bin/bash
echo "Hello World !"
复制代码

#! ist ein herkömmliches Zeichen, das dem System mitteilt, welcher Interpreter dieses Skript ausführen muss, dh welche Shell verwendet werden soll.

Der Echo-Befehl wird verwendet, um Text an das Fenster auszugeben.

运行 Shell 脚本有两种方法:

1、作为可执行程序

将上面的代码保存为 test.sh,并 cd 到相应目录:

chmod +x ./test.sh  #使脚本具有执行权限
./test.sh  #执行脚本
复制代码

注意,一定要写成 ./test.sh,而不是 test.sh,运行其它二进制的程序也一样,直接写 test.sh,linux 系统会去 PATH 里寻找有没有叫 test.sh 的,而只有 /bin, /sbin, /usr/bin,/usr/sbin 等在 PATH 里,你的当前目录通常不在 PATH 里,所以写成 test.sh 是会找不到命令的,要用 ./test.sh 告诉系统说,就在当前目录找。

2、作为解释器参数

这种运行方式是,直接运行解释器,其参数就是 shell 脚本的文件名,如:

/bin/sh test.sh
/bin/php test.php
复制代码

这种方式运行的脚本,不需要在第一行指定解释器信息,写了也没用。

ubuntu(linux)下 source、sh、bash、./ 执行脚本的区别是什么?

1. source命令用法:

source FileName
复制代码

作用:在当前 bash 环境下读取并执行 FileName 中的命令。该 filename 文件可以无 "执行权限"。

注:该命令通常用命令 . 来替代。

2. sh、bash的命令用法:

sh FileName
或
bash FileName
复制代码

作用:打开一个子 shell 来读取并执行 FileName 中命令。该 filename 文件可以无 "执行权限"。

注:运行一个shell脚本时会启动另一个命令解释器。

3、./的命令用法:

./FileName
复制代码

作用: 打开一个子 shell 来读取并执行 FileName 中命令,该 filename 文件需要 "执行权限"。

注:运行一个 shell 脚本时会启动另一个命令解释器。

Ich denke du magst

Origin juejin.im/post/7229318874806321212
Empfohlen
Rangfolge