問題タブ [shopt]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
bash - ターミナルに設定されたglobstarがスクリプトに伝播しない
ソースで提供されているbuild.shを使用してライブラリをビルドする必要があります。globstarパス(src/**/*.java
)が含まれています。私はglobstarを有効にしましshopt -s globstar
たが、ターミナルからでもすべてうまく機能しますが、bashファイルからは次のようになります。
次のエラーが発生します。
arrays - nullglob と配列
配列を作成してから、この配列から削除できます
ただし、nullglob
設定されている場合、配列から削除できません
bash - 引用符で囲まれた部分と引用されていない部分で構成される文字列でのワイルドカード展開 (グロビング)
次のようなシェルスクリプトの行があります。
、そのフォルダーでjarファイルの名前が付けられたものを実行したいだけなので。しかし、これは私が期待したように機能していません。エラーメッセージが表示されます:
私が望む置換を行うのではなく、文字通り「*」文字を取っています。これを修正するにはどうすればよいですか?
編集:それは今働いています。フォルダーの接頭辞が間違っていました:/不思議に思っている人にとっては、これが正しい方法です。
bash - shopt を使用してもスクリプトが機能しない
私はLinuxを使用しています。以下は私が試しているスクリプトです。フォルダー内の最新の変更されたファイルを取得しようとしています:
*(om[1])
代わりにファイル名がエコーされることを期待しています。そのため、スクリプトは、shopt の使用によるエラーを発生しません。
コマンドラインでコマンドを試してみると、出力としてファイル名が表示されます。
なぜecho *(om[1])
に取り組んでいるcommandline
のに bash ではないのですかscript
。
bash - 一致するファイルがない場合に for ループをスキップする方法は?
で始まるすべてのファイルをループするfoo
と、
問題は、次のように開始するファイルがないfoo
場合です。
で始まるファイルがない場合でも、ループが 1 回実行されることを意味しますfoo
。
これはどのように可能ですか?すべてのファイルをループするにはどうすればよいですか (ファイルがない場合はループしません)。
bash - シェルの更新後に shopt コマンドが .bashrc に見つからない
シェルを ZSH に更新しました。私がsource ~/.bashrc
。このエラーが発生しています
ドクターに誤りがありました。このコマンドを実行すると
/home/amerrnath/.bashrc:17: コマンドが見つかりません: shopt /home/amerrnath/.bashrc:25: コマンドが見つかりません: shopt /home/amerrnath/.bashrc:109: コマンドが見つかりません: shopt /usr/share/ bash-completion/bash_completion:35: `]]' 付近で解析エラーが発生しました
この問題の解決を手伝ってください
bash - globstar を使用してディレクトリ内のすべてのファイルをコピーする方法は?
内のすべてのファイルをコピーしたいとしdir
ますdest
。
ファイル名とディレクトリの深さがわかっている場合、これは簡単です。
ディレクトリのみを取得するのも簡単です (globstar を使用)。
しかし、ファイルのみをグロブする方法がわかりません。たとえば、次のようには機能しません。
bash - 「shopt -s nullglob」が設定されていると sed が失敗する
数日前、フォルダー内のすべての PDF のページ数とファイル サイズを合計する小さな bash スクリプトを開始しました。今はかなりうまくいっていますが、まだ理解できないことが 1 つあります。
が設定されている場合、sed が常に失敗するのはなぜshopt -s nullglob
ですか? なぜこれが起こるのか誰かが知っていますか?
Ubuntu 14.04 で GNU Bash 4.3 と sed 4.2.2 を使用しています。
bash - ファイル名グロブに一致するものがない場合に何も一致しない方法
jpg
拡張子またはに一致するすべてのファイルをループしたいtxt
。私が使う:
問題:ディレクトリに jpg ファイルがまったく含まれていない場合、ループは output で 1 回繰り返されますmyDir/*.jpg
。任意のファイルに置き換えられると思い*
ました(ファイルが存在しない場合は展開できません)。不要な反復を回避するにはどうすればよいですか?