26シェルスクリプトの面接の質問と回答を読む必要があります[初心者および経験者向け]
公開: 2020-12-17シェルは、コマンドラインインタープリター、またはコマンド、シェルスクリプト、およびプログラムを実行するために設計された完全な環境です。 コマンドをシェルに入力すると、入力に基づいてプログラムが実行されます。
基本的に、入力コマンドを変換し、カーネル互換言語に変換します。 シェルスクリプトは、Unixシェルによって実行されるプログラム内のコマンドのリストを参照します。 スクリプトには、実行順序順にコマンドを定義するコメントが含まれています。
イントロダクションでシェルスクリプトについてもっと知りたい場合は、最後までスクロールし続けてください。シェルスクリプトの面接の質問と回答のリストをまとめて、学習プロセスを開始するのに役立てています。 データサイエンスについて詳しく知りたい場合は、データサイエンスコースをご覧ください。
目次
シェルスクリプトインタビューの質問と回答
- シェルスクリプトの利点は何ですか?
シェルスクリプトの最大の利点は次のとおりです。
- これにより、要件に最適なカスタムオペレーティングシステムを作成できます。
- 使用しているプラットフォームに基づいてソフトウェアアプリケーションを設計できます。
- システム管理タスクの自動化に役立つため、時間に精通しています。
2.シェル変数とは何ですか?
シェル変数は、シェルプログラムまたはスクリプトのコア部分を形成します。 変数を使用すると、シェルはシェルプログラム内で情報を保存および操作できます。 シェル変数は通常、文字列変数として格納されます。
3.シェルスクリプトで使用される変数のタイプを一覧表示します。
通常、シェルスクリプトには2種類の変数があります。
- システム定義変数– OS(Linux)によって作成され、大文字で定義されます。 Setコマンドを使用してそれらを表示できます。
- ユーザー定義変数–これらはシステムユーザーによって作成および定義されます。 Echoコマンドを使用して変数値を表示できます。
- 変数を変更できないようにするにはどうすればよいですか?
読み取り専用を使用して、変数を変更できないようにすることができます。 変数'a'の値を5のままにして一定に保ちたいので、次のように読み取り専用を使用するとします。
$ a = 5
$読み取り専用
- さまざまなタイプのシェルに名前を付けます。
シェルには4つのコアタイプがあります。
- ボーンシェル(sh)
- Cシェル(csh)
- Korn Shell(ksh)
- ボーンアゲインシェル(bash)
- 「位置パラメータ」について説明します。
位置パラメータは、シェルによって定義された変数です。 これらは、コマンドラインで引数を指定することによってプログラムに情報を渡すために使用されます。
- UNIX環境で使用できるシェルとカーネルの数はいくつですか?
通常、UNIX環境にはカーネルが1つだけあります。 ただし、使用可能なシェルは複数あります。
- シェルプログラムを実行するために別のコンパイラが必要ですか?
いいえ、シェルプログラムを実行するために別のコンパイラは必要ありません。 シェル自体はシェルプログラムのコマンドラインであるため、それらを実行します。
- シェルスクリプトでファイルのアクセス許可をどのように変更しますか?
umaskを介してファイルのアクセス許可を変更できます。
- 「。」とは何ですかファイル名の先頭にある(ドット)は?
「。」で始まるファイル名隠しファイルです。 通常、シェルでファイルを一覧表示しようとすると、隠しファイルを除くすべてのファイルが一覧表示されます。 ただし、隠しファイルはディレクトリに存在します。 隠しファイルを表示する場合は、「–a」フラグを指定してIsコマンドを実行する必要があります。
- Linuxでショートカットを作成するにはどうすればよいですか?
Linuxでショートカットを作成するには、次の2つのリンクを使用します。
ハードリンク–これらのリンクはファイルのiノードにリンクされています。 それらは常にファイルと同じファイルシステムに存在します。 元のファイルを削除しても、ハードリンクは影響を受けません。
ソフトリンク–これらのリンクはファイル名にリンクされています。 それらは、ファイルと同じファイルシステムに存在する場合と存在しない場合があります。 元のファイルを削除すると、ソフトリンクは非アクティブになります。
12.Linuxプロセスのさまざまな段階に名前を付けます。
通常、Linuxプロセスは次の4つのフェーズを通過します。
- 待機中–この段階では、Linuxプロセスは必要なリソースを待機する必要があります。
- 実行中–この段階で、プロセスが実行されます。
- 停止–実行が成功すると、Linuxプロセスが停止します。
- ゾンビ–最後のステップでは、プロセスが実行されていなくても、プロセステーブルでアクティブなままです。
- 「エコー」の代替コマンドはありますか?
はい、tputはechoコマンドの代替です。 tputコマンドを使用すると、出力を画面に表示する方法を制御できます。
- ファイルシステムにはいくつのブロックが含まれていますか?
ファイルシステムには4つのブロックがあります。
- スーパーブロック–このブロックは、ブロックサイズ、ブロックグループサイズ、使用情報、空/塗りつぶしブロックとそれぞれのカウント、iノードテーブルのサイズと場所など、ファイルシステムの状態に関する情報を提供します。
- Bootblock –このブロックは、ユーザーがホストマシンを起動したときに実行されるブートストラップローダープログラムを保持します。
- データブロック–このブロックには、ファイルシステムのファイルコンテンツが含まれます。
- iノードテーブル– UNIXはすべての要素をファイルとして扱い、ファイルに関連するすべての情報はiノードテーブルに保存されます。
必読:Pythonインタビューの質問
- viエディターの3つの操作モードに名前を付けます。
3つの動作モードは次のとおりです。
- コマンドモード–このモードは、ユーザーが押したキーをエディターコマンドとして扱い、解釈します。
- 挿入モード–このモードを使用して、新しいテキストの挿入、既存のテキストの編集などを行うことができます。
- Ex-commandモード–ユーザーはコマンドラインですべてのコマンドを入力できます。
- 「制御命令」を定義します。 シェルでは何種類の制御命令を使用できますか?
制御命令は、スクリプト内のさまざまな命令の実行方法を指定できるコマンドです。 したがって、それらの主な目的は、シェルプログラムの制御フローを決定することです。
シェルには、次の4種類の制御命令があります。
- シーケンス制御命令は、命令がプログラム内にあるのと同じ順序で実行されるように強制します。
- コンピュータが次に実行する命令を決定できるようにする選択/決定制御命令。
- コンピューターがステートメントのグループを繰り返し実行できるようにする繰り返し/ループ制御命令。
- ケースコントロール命令は、さまざまな選択肢から選択する必要がある場合に使用されます。
- 「IFS」を定義します。
IFSは、内部フィールドセパレータを指します。 これはシステム変数であり、デフォルト値はスペース、タブ、その後に改行が続きます。 IFSは、フィールドまたは単語が行のどこで終わり、別の単語がどこで始まるかを示します。
- 「メタ文字」を定義します。
シェルはメタ文字で構成されます。メタ文字は、他の文字に関する情報を提供するデータフィールドまたはプログラムの特殊文字です。 たとえば、シェルの「ls s *」コマンドは、文字「s」で始まるすべてのファイルを一覧表示します。
- $*と$@を区別します。
$ *は位置パラメータの完全なグループを単一の文字列として扱いますが、$@は引用符で囲まれた各引数を個別の引数として扱います。
また読む:インドのPython開発者給与
21.シェルスクリプトでwhileループの構文を記述します。
シェルスクリプトでは、コマンドのブロックを数回繰り返したい場合にwhileループが使用されます。 「while」ループの構文は次のとおりです。
[テスト条件]
する
コマンド…

終わり
- breakコマンドとcontinueコマンドはどのように異なりますか?
breakコマンドは、実行中のループから脱出するために使用されます。 breakコマンドを使用して、untilループやwhileループを含む任意のループコマンドを終了できます。 一方、continueコマンドは、完全なループを離れることなく、ループの現在の反復を終了するために使用されます。
23.シェルスクリプトでShebang行を使用するのはなぜですか?
シバンラインは、シェルスクリプト/プログラムの上部にあります。 スクリプトを実行するエンジンの場所をユーザーに通知します。
シバンラインの例を次に示します。
#!/ bin / sh
ct $ 1
- シェルで複数のスクリプトを実行できますか?
はい、シェルで複数のスクリプトを実行することは可能です。 複数のスクリプトを実行すると、あるスクリプトを別のスクリプトから呼び出すことができます。 そのためには、スクリプトを呼び出すときに呼び出されるスクリプトの名前を指定する必要があります。
- システムが実行されている時間を知るために、どのコマンドを使用する必要がありますか?
システムが実行されている時間を知るには、uptimeコマンドを使用する必要があります。 uptimeコマンドの例を次に示します。
u / user1/Shell_Scripts_2018>稼働時間
- ディスク使用量を確認するには、どのコマンドを使用する必要がありますか?
次の3つのコマンドを使用して、ディスクの使用状況を確認できます。
- df –ディスクの空き容量を確認するために使用されます。
- du –ディレクトリごとのディスク使用量をチェックするために使用されます。
- dfspace –空きディスク容量をメガバイト(MB)単位でチェックします。
27. Crontabとはどういう意味ですか?
Crontabはcrontableの略で、Cronはタスクを実行するジョブスケジューラです。 Crontabは、スケジュールに従って実行するコマンドのリストであり、そのリストを管理するために使用するコマンドも含まれています。
28.シェルスクリプトを使用すべきでないのはいつですか?
次のような場合は、シェルスクリプトを使用しないでください。
- 完全な給与処理ソリューションを作成するなど、タスクが非常に複雑な場合は、シェルスクリプトを使用しないでください。
- 仕事に高いレベルの生産性が必要な場合は、シェルスクリプトを使用しないでください。
- ジョブに複数のソフトウェアソリューションが必要な場合は、シェルスクリプトを使用しないでください。
29.シェルスクリプトの文字列をどのように比較しますか?
testコマンドを使用して、テキスト文字列を比較します。 各文字列に存在するすべての文字を比較することにより、テキスト文字列を比較します。
読む:データエンジニアのインタビューの質問
30.ファイルシステムとはどういう意味ですか?
ファイルシステムは、ファイルとそれらのファイルに関連する情報のコレクションです。 データの取得方法と保存方法を制御します。 ファイルシステムがなければ、ストレージに存在するデータは大量のデータにすぎず、あるデータがどこで終わり、別のデータがどこで始まるかを知る方法がありません。
31.一重引用符と二重引用符を区別できますか?
はい。 変数の値の評価を実行したくない場合は、一重引用符を使用します。 一方、変数の値の評価を実行する場合は、二重引用符を使用します。
32. GUIスクリプトとはどういう意味ですか?
GUIを使用して、コンピューターとそのアプリケーションを制御します。 GUIスクリプトにより、オペレーティングシステムに応じてさまざまなアプリケーションを処理できます。
33.シェルスクリプトのスーパーブロックについて何を知っていますか?
スーパーブロックは、特定のファイルシステムの記録を持つプログラムです。 これには、ブロックサイズ、それぞれのカウントを含む塗りつぶされたブロックと空のブロック、iノードテーブルの場所とサイズ、使用法情報、ディスクブロックマップなどの特性が含まれています。
34.シバンラインの重要性は何ですか?
シバンの線はスクリプトの一番上に残ります。 スクリプトを実行するエンジンの場所に関する情報を提供します。
35.最も一般的なUNIXコマンドのいくつかを提供します。
最も一般的なUNIXコマンドのいくつかを次に示します。
- cd – cdコマンドは、$ cdとして使用されると、ディレクトリをユーザーのホームディレクトリに変更します。 これを使用して、$cdtestでテストするディレクトリを変更できます。
- ls – lsコマンドは、$ lsとして使用されると、現在のディレクトリ内のファイルを一覧表示します。 $ ls -lrtとして使用することにより、長い形式でファイルを記録するために使用できます。
- rm – rmコマンドは、$ rm fileAとして使用すると、fileAという名前のファイルを削除します。
- cat –このコマンドは、ファイルを$ cat filenameとして使用すると、ファイルに存在する内容を表示します。
- mv – mvコマンドは、ファイルの名前を変更したり、ファイルを移動したりできます。 たとえば、$ mv fileA fileBコマンドは、fileAおよびfileBという名前のファイルを移動します。
- date – dateコマンドは、現在の時刻と日付を表示します。
- grep – grepコマンドは、ファイル内の特定の情報を検索できます。 たとえば、$ grep Hello fileAコマンドは、「Hello」という単語が存在する行を検索します。
- finger –fingerコマンドはユーザーに関する情報を表示します。
- ps – psコマンドは、マシンで現在実行されているプロセスを表示します。
- man – manコマンドは、指定されたコマンドに関するオンラインヘルプまたはマニュアルを表示します。 たとえば、$ ms rmコマンドは、rmコマンドのオンラインマニュアルを表示します。
- pwd – pwdコマンドは、現在の作業ディレクトリを表示します。
- wc – wcコマンドは、ファイルに存在する文字、単語、および行の数をカウントします。
- history – historyコマンドは、最近使用したすべてのコマンドのリストを表示します。
- gzip –gzipコマンドは指定されたファイルを圧縮します。 たとえば、$ gzip fileAコマンドはfileAを圧縮し、fileA.gzに変更します。
- logname – lognameコマンドは、ユーザーのログ名を出力します。
- head – headコマンドは、ファイルに存在する最初の行を表示します。 たとえば、$ head -15 fileAコマンドは、fileAの最初の15行を表示します。
追記:これは、シェルスクリプトの面接で最も重要な質問の1つです。 この質問の多くのバージョンがインタビューで尋ねられるので、UNIXコマンドのより完全なリストを準備することをお勧めします。
必読:データサイエンスインタビューの質問
36. CShellはBourneShellよりどのように優れていますか?
C Shellは、次の理由でBourneShellよりも優れています。
- C Shellを使用すると、コマンドのエイリアスを作成できます。 これは、ユーザーがコマンドに任意の名前を付けることができることを意味します。 ユーザーが長いコマンドを複数回使用する必要がある場合は、非常に便利です。 コマンドの長い名前を何度も入力する代わりに、ユーザーは割り当てられた名前を入力できます。 それは多くの時間とエネルギーを節約し、プロセスをはるかに効率的にします。
- C Shellにはコマンド履歴機能があり、CShellは以前に使用されたすべてのコマンドを記憶します。 この機能を使用すると、同じコマンドを複数回入力することを回避できます。 効率が大幅に向上します。
上記の2つの理由により、Cシェルを使用する方がボーンシェルよりもはるかに有利です。
37.シェルスクリプトを書くために不可欠なことは何ですか?
シェルスクリプトには、それを決定的にする多くの利点があります。 ユーザーからの入力を受け取り、ファイルして、画面に表示します。 さらに、独自のコマンドを作成し、簡単な日常のタスクを自動化することができます。 シェルスクリプトを使用して、システム管理タスクを自動化することもできます。 シェルスクリプトは、多くのエネルギーと時間を節約することにより、プロセスをより効率的にします。 このため、それは非常に不可欠であり、広く使用されています。
結論
これらの26のシェルスクリプトインタビューの質問と回答が、シェルスクリプトの氷を破り、次のインタビューの準備に役立つことを願っています。
データサイエンスについて知りたい場合は、IIIT-B&upGradのデータサイエンスのエグゼクティブPGプログラムをチェックしてください。これは、働く専門家向けに作成され、10以上のケーススタディとプロジェクト、実践的なハンズオンワークショップ、業界の専門家とのメンターシップを提供します。1業界のメンターとの1対1、400時間以上の学習、トップ企業との仕事の支援。
シェルスクリプトとは何ですか?
シェルスクリプトは、単調なタスクを自動化するためのスクリプト/コードを作成するプロセスです。 コマンドをn回続けて入力する代わりに、次々に実行される一連の命令を自動化するスクリプトを作成できます。 シェルスクリプトの重要な段階は、スクリプトを作成し、シェルからアクセスできるようにし、シェル実行権限を付与することです。 シェルスクリプトはASCIIテキストで記述されており、ASCIIテキストが含まれています。 これらは、テキストエディタ、ワードプロセッサ、またはグラフィカルユーザーインターフェイス(GUI)を使用して作成されます。 スクリプトの内容は、シェルが理解できる言語で記述された一連のコマンドで構成されています。 完了すると、ファイルは拡張子を付けて、シェルにアクセスできる場所に保存されます。
シェルスクリプトのアプリケーションは何ですか?
シェルスクリプトは簡単で効果的です。 スクリプトでは、シェルコマンドラインと同じ構文を使用して、あいまいさを排除します。 シェルスクリプトは、一度に1行ずつ入力して完了するのに時間がかかりすぎる反復的なアクティビティに便利です。 ユーザーは、コードのコンパイル、プログラムの実行、プログラミング環境の確立、バッチの完了とファイルの操作、既存のプログラムの接続、定期的なバックアップの実行、システムの監視など、さまざまな目的でシェルスクリプトを使用できます。
シェルスクリプトは良い職業ですか?
シェルスクリプトは、自動化、プログラミング、システム管理の雑用、アプリケーションの自動化、パッケージのセットアップ、検証の自動化、システムでのデータのバックアップと復元など、さまざまな分野で使用されます。したがって、シェルスクリプトは、すべての企業のIT部門の重要な部分です。 。 また、個人のITキャリア全体で役立ちます。 シェルスクリプトは年間平均6,39,000ポンドで、学習者にとって多くの可能性を秘めた優れた職業です。 ほとんどのITプロフェッショナルは、多くの時間を節約できるため、適度な自動化された雑用に毎日使用しています。