検索
ホームページ運用・保守Linuxの運用と保守Linuxでファイルを実行する方法

Linuxでファイルを実行する方法

Linux で .sh ファイルを実行する方法

Linux で .sh ファイルを実行する方法

1. .sh ファイルはテキスト ファイルなので、実行するには chmod a x xxx.sh を使用して実行権限を与える必要があります。

これは bash スクリプトですか?

touch test.sh を使用できます #test.sh ファイルを作成します

vi test.sh #Edit test.sh ファイル

コンテンツを追加

#! /bin/bash
mkdir test

保存して終了します。

chmod a x test.sh #test.sh の実行権限を与える

たとえば、test,sh ファイルは /home/work ファイルの下にあります

方法 1自分のディレクトリで実行します

cd /home/workwen ファイルを入力します

./test.sh

を実行します コマンドは現在のディレクトリにあります「テスト」ディレクトリ。

方法 2 絶対的な強度で実行する

# /home/work/test.sh を実行する

方法 3 独自のディレクトリで実行する

sh test.sh

最終提案:

C コード

1.man sh

# を使用します。 # # man sh sh~

の紹介を見てみましょう: "

Linux Tutorial

"linux.sh構文

はじめに:

1 始まり

プログラムは次の行で始まる必要があります (ファイルの最初の行に配置する必要があります)。

# !/bin/sh

記号 #! は、その背後にあるパラメータがファイルの実行に使用されるプログラムであることをシステムに伝えるために使用されます。この例では、/bin/sh を使用してプログラムを実行します。

スクリプトの作成が完了したら、スクリプトを実行する場合は、スクリプトを実行可能にする必要があります。

スクリプトを実行可能にするには:

./filename を使用して実行できるように chmod x filename をコンパイルします。

2 注意事項

シェル プログラミングを行う場合, # で始まる文は行末までのコメントを表します。プログラム内でコメントを使用することを強くお勧めします。

コメントを使用すると、スクリプトを長期間使用したことがない場合でも、スクリプトの機能と動作原理を短時間で理解できます。

3 変数

他のプログラミング言語では、変数を使用する必要があります。シェル プログラミングでは、すべての変数は文字列で構成されているため、変数を宣言する必要はありません。変数に値を割り当てるには、次のように記述できます:

#!/bin/sh

#変数に値を割り当てる:

a=”hello world”

# 変数 a の内容を出力します:

echo "A is:"

echo $a

変数名は他の単語と混同されやすい場合があります。

num=2

echo "this is the $numnd"

これは、「this is the 2nd」を出力せず、「this is the 2nd」のみを出力します。シェルは変数 numnd の値を検索しますが、この変数には値がないためです。中括弧を使用して、出力したいのが num 変数であることをシェルに伝えることができます。

num=2

echo "this is the ${num}nd"

This will print : this is the 2nd

4 環境変数

export キーワードで処理される変数を環境変数と呼びます。環境変数は通常ログイン スクリプトでのみ使用されるため、環境変数については説明しません。

5 シェル コマンドとプロセス制御

シェル スクリプトでは 3 種類のコマンドを使用できます:

1)Unix コマンド:

シェル スクリプト内ではありますが任意の unix コマンドを使用できますが、比較的よく使用されるコマンドがいくつかあります。これらのコマンドは通常、ファイルおよびテキストの操作に使用されます。

一般的なコマンド構文と関数

echo "some text": テキストの内容を画面に出力します

ls: ファイル リスト

wc –l file wc -w file wc -c file: ファイル内の行数を数えます。ファイル内の単語数を数えます。ファイル内の文字数を数えます。

cp sourcefile destfile: file copy

mv oldname newname: 繰り返します。 ファイルに名前を付けるか、ファイルを移動します。

rm ファイル: ファイルを削除します。

grep 'pattern' ファイル: ファイル内の文字列を検索します。 例: grep 'searchstring' file.txt

Cut -bcolnum file: ファイルの内容を表示範囲を指定して標準出力装置に出力 例: 各行の5文字目から9文字目までを出力 Cut - b5-9 file.txt. cat コマンドと混同しないでください。

これらは 2 つの完全に異なるコマンドです

cat file.txt: ファイルの内容を標準出力デバイス (画面) に出力します。 )

file somefile: ファイルの種類を取得します

read var: ユーザーに入力を求め、その入力を変数に割り当てます

sort file.txt: 行を並べ替えますfile.txt ファイル

uniq: テキスト ファイルを削除します。 表示される重複行 (例: sort file.txt | uniq

expr: 数学的演算を実行します。 例: 2 と 3 を加算すると expr になります) 2 " " 3

find: ファイルを検索します (例: ファイルに基づいて) 名前検索 find . -name filename -print

tee: データを標準出力デバイス (画面) に出力し、次のようなファイルを作成します: somecommand | tee outfile

Basename file: パスなしのファイル名を返します。例: Basename /bin/tux は、 return tux

dirname file: ファイルのパスを返します。例: dirname /bin/tux は /bin

を返します head file: テキスト ファイルの最初の数行を出力します

末尾ファイル: テキスト ファイルの最後の数行を出力します。

sed: Sed は、基本的な検索および置換プログラムです。標準入力 (コマンド パイプなど) からテキストを読み取り、

結果を標準出力 (画面) に出力できます。このコマンドは、正規表現 (「リファレンス」を参照) を使用して検索します。シェル内のワイルドカードと混同しないでください。例: linuxfocus を LinuxFocus に置き換えます: cat text.file | sed ’s/linuxfocus/LinuxFocus/’ >newtext.file

awk: awk はテキスト ファイルからフィールドを抽出するために使用されます。デフォルトでは、フィールド区切り文字はスペースですが、-F を使用して他の区切り文字を指定できます。

cat file.txt | awk -F, '{print $1 "," $3}' ここでは、最初と 3 番目のフィールドを同時に出力するためのフィールド区切り文字として使用します。ファイルの内容が次のとおりである場合: Adam Bor、34、IndiaKerry Miller、22、USA、コマンド出力は次のようになります: Adam Bor、IndiaKerry Miller、USA

2) コンセプト: パイプライン、リダイレクト、バックティック

これらはシステム コマンドではありませんが、非常に重要です。

パイプ (|) は、あるコマンドの出力を別のコマンドの入力として使用します。

grep "hello" file.txt | wc -l

file.txt 内で「hello」を含む行を検索し、行数を数えます。

ここでは、grep コマンドの出力が wc コマンドの入力として使用されます。もちろん複数のコマンドを使用することもできます。

リダイレクト: コマンドの結果を標準出力 (画面) ではなくファイルに出力します。

> ファイルに書き込み、古いファイルを上書きします。

>> 古いファイルの内容を保持したまま、ファイルの末尾に追加します。

バックスラッシュ

あるコマンドの出力を別のコマンドのコマンド ライン パラメーターとして使用するには、バックスラッシュを使用します。

コマンド:

find . -mtime -1 -type f -print

は、過去 24 時間の変更を検索するために使用されます (-mtime –2 は過去 48 時間を意味します)時間) 渡されたファイル。見つかったすべてのファイルをパッケージ化したい場合は、次の Linux スクリプトを使用できます:

#!/bin/sh

# チェックマークは通常の引用符 ( ') ではなくバックティック (`) です。 :

tar -zcvf lastmod.tar.gz `find . -mtime -1 -type f -print`

3) プロセス制御

1.if

「if」式は、条件が true の場合に then 以降の部分を実行します:

if ….; then

….

elif ….; then

….

else

….

fi

ほとんどの場合、テスト コマンドを使用して条件テストをテストできます。たとえば、文字列を比較したり、ファイルが存在し、読み取り可能であるかどうかを判断したりできます...

通常、「[ ]」は条件付きテストを表すために使用されます。ここでのスペースは重要であることに注意してください。角括弧の間には必ずスペースを入れてください。

[ -f "somefile" ] : ファイルかどうかを判断します

[ -x "/bin/ls" ] : /bin/ls が存在し、実行権限があるかどうかを判断します

[ -n "$var" ] : $var 変数に値があるかどうかを判断します

[ "$a" = "$b" ] : $a と $b が等しいかどうかを判断します

man test を実行して、テスト式で比較および判断できるすべての型を表示します。

次のスクリプトを直接実行します:

#!/bin/sh

if [ "$SHELL" = "/bin/bash" ]; then

echo 「あなたのログイン シェルは bash (bourne again シェル) です」

else

echo 「あなたのログイン シェルは bash ではなく $SHELL です」

fi

変数 $SHELL には、/bin/bash と比較したログイン シェルの名前が含まれています。

ショートカット演算子

C 言語に詳しい友人は次の表現を好むかもしれません:

[ -f "/etc/shadow" ] && echo 「このコンピュータはシャドウを使用しています」 「passwords」

ここで && はショートカット演算子です。左側の式が true の場合、右側のステートメントが実行されます。

論理演算における AND 演算と考えることもできます。上記の例は、/etc/shadow ファイルが存在する場合、「このコンピュータはシャドウ パスワードを使用しています」を出力することを意味します。同じ OR 演算 (||) はシェル プログラミングでも使用できます。以下に例を示します:

#!/bin/sh

mailfolder=/var/spool/mail/james

[ -r "$mailfolder" ]' '{ echo “$mailfolder を読み取れません” ; exit 1; }

echo “$mailfolder has mail from:”

grep “^From ” $mailfolder

最初のスクリプトメールフォルダーが読み取り可能かどうかを確認します。読み取り可能な場合は、ファイル内の「From」行を出力します。読み取り不可能な場合は、OR 演算が有効になり、エラー メッセージを出力した後にスクリプトが終了します。ここで問題が発生します。つまり、次の 2 つのコマンドが必要です。

◆エラー メッセージを出力する

◆プログラムを終了する

中括弧を使用して、2 つのコマンドを匿名関数の形式で 1 ​​つのコマンドとしてまとめます。一般的な機能については以下で説明します。

if 式を使用して、AND または演算子を使用せずに何かを行うこともできますが、AND または 演算子を使用した方がはるかに便利です。

以上がLinuxでファイルを実行する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
Linux操作のマスター:実用的なガイドLinux操作のマスター:実用的なガイドApr 12, 2025 am 12:10 AM

Linux操作をマスターする理由は、幅広いアプリケーションシナリオと強力な機能です。 1)Linuxは、開発者、システム管理者、テクノロジー愛好家に適しており、サーバー管理、組み込みシステム、コンテナ化テクノロジーで使用されています。 2)Linuxの学習は、ファイルシステム構造、シェルの使用、ユーザー許可管理、プロセス管理から始めることができます。 3)Linuxコマンドラインは、LS、MKDIR、CDなどのシェルを介してコマンドを実行し、リダイレクトおよびパイプライン操作をサポートするコアツールです。 4)高度な使用法には、バックアップスクリプトなどの自動化されたスクリプトの書き込み、TARコマンド、条件付き判断が含まれます。 5)一般的なエラーには、エコー、セットX、$?を介してデバッグできます。 6)パフォーマンス最適化の提案

Linuxの5つの柱:彼らの役割を理解するLinuxの5つの柱:彼らの役割を理解するApr 11, 2025 am 12:07 AM

Linuxシステムの5つの柱は次のとおりです。1。Kernel、2。SystemLibrary、3。Shell、4。FileSystem、5。SystemTools。カーネルはハードウェアリソースを管理し、基本的なサービスを提供します。システムライブラリは、アプリケーション用の事前コンパイルされた機能を提供します。シェルは、ユーザーがシステムと対話するインターフェイスです。ファイルシステムはデータを整理して保存します。また、システムツールはシステム管理とメンテナンスに使用されます。

Linuxメンテナンスモード:ツールとテクニックLinuxメンテナンスモード:ツールとテクニックApr 10, 2025 am 09:42 AM

Linux Systemsでは、起動時に特定のキーを押すか、「sudosystemctlrescue」などのコマンドを使用することにより、メンテナンスモードを入力できます。メンテナンスモードを使用すると、管理者は、ファイルシステムの修復、パスワードのリセット、セキュリティの脆弱性など、干渉なしにシステムメンテナンスとトラブルシューティングを実行できます。

主要なLinux操作:初心者向けガイド主要なLinux操作:初心者向けガイドApr 09, 2025 pm 04:09 PM

Linuxの初心者は、ファイル管理、ユーザー管理、ネットワーク構成などの基本操作をマスターする必要があります。 1)文件管理:使用mkdir、タッチ、ls rm 3)ネットワーク構成:ifconfig、echo、およびufwコマンドを使用します。これらの操作はLinuxシステム管理の基礎であり、それらをマスターすることでシステムを効果的に管理できます。

sudoを使用して、Linuxのユーザーに高い特権を付与するにはどうすればよいですか?sudoを使用して、Linuxのユーザーに高い特権を付与するにはどうすればよいですか?Mar 17, 2025 pm 05:32 PM

この記事では、LinuxのSudo特権を管理する方法について説明します。重要な焦点は、 /etc /sudoersの安全性とアクセスを制限することです。

LinuxでSSHに2要素認証(2FA)を実装するにはどうすればよいですか?LinuxでSSHに2要素認証(2FA)を実装するにはどうすればよいですか?Mar 17, 2025 pm 05:31 PM

この記事では、Google Authenticatorを使用してLinux上のSSH用の2要素認証(2FA)のセットアップ、インストール、構成、およびトラブルシューティング手順の詳細に関するガイドを提供します。 Enhanced Secなど、2FAのセキュリティ利益を強調しています

TOP、HTOP、VMSTATなどのツールを使用してLinuxのシステムパフォーマンスを監視するにはどうすればよいですか?TOP、HTOP、VMSTATなどのツールを使用してLinuxのシステムパフォーマンスを監視するにはどうすればよいですか?Mar 17, 2025 pm 05:28 PM

この記事では、Linuxシステムのパフォーマンスを監視するためにTop、HTOP、およびVMSTATを使用して、効果的なシステム管理のための独自の機能とカスタマイズオプションを詳述することについて説明します。

パッケージマネージャー(apt、yum、dnf)を使用してLinuxのソフトウェアパッケージを管理するにはどうすればよいですか?パッケージマネージャー(apt、yum、dnf)を使用してLinuxのソフトウェアパッケージを管理するにはどうすればよいですか?Mar 17, 2025 pm 05:26 PM

記事では、APT、Yum、およびDNFを使用してLinuxでソフトウェアパッケージの管理を行い、インストール、更新、および削除をカバーしています。さまざまな分布に対する機能と適合性を比較します。

See all articles

ホットAIツール

Undresser.AI Undress

Undresser.AI Undress

リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover

AI Clothes Remover

写真から衣服を削除するオンライン AI ツール。

Undress AI Tool

Undress AI Tool

脱衣画像を無料で

Clothoff.io

Clothoff.io

AI衣類リムーバー

AI Hentai Generator

AI Hentai Generator

AIヘンタイを無料で生成します。

ホットツール

SublimeText3 Mac版

SublimeText3 Mac版

神レベルのコード編集ソフト(SublimeText3)

メモ帳++7.3.1

メモ帳++7.3.1

使いやすく無料のコードエディター

MinGW - Minimalist GNU for Windows

MinGW - Minimalist GNU for Windows

このプロジェクトは osdn.net/projects/mingw に移行中です。引き続きそこでフォローしていただけます。 MinGW: GNU Compiler Collection (GCC) のネイティブ Windows ポートであり、ネイティブ Windows アプリケーションを構築するための自由に配布可能なインポート ライブラリとヘッダー ファイルであり、C99 機能をサポートする MSVC ランタイムの拡張機能が含まれています。すべての MinGW ソフトウェアは 64 ビット Windows プラットフォームで実行できます。

EditPlus 中国語クラック版

EditPlus 中国語クラック版

サイズが小さく、構文の強調表示、コード プロンプト機能はサポートされていません

SublimeText3 Linux 新バージョン

SublimeText3 Linux 新バージョン

SublimeText3 Linux 最新バージョン