タグ付けされた質問 「bash」

Bashは、GNUプロジェクトのUnixライクなオペレーティングシステム用の無料のシェルです。

3
コマンドを失うことなく、タブ補完用のリストの作成を中止するにはどうすればよいですか?
some_very_long_command_line --arg1 --arg2=555 --arg4 ... ... ... && <now Tab pressed> (Now it works. I want to cancel before the following message) Display all 6936 possibilities? (y or n) Tab補完の長い検索についてはどうすればいいですか? Ctrl + Cを押すだけで中断しますが、コマンドを履歴に保存しません。

1
bashを使用しないWindowsでのGit
git bashもインストールせずにWindowsにgitをインストールすることは可能ですか? Windowsでbashが利用できるようになったので、これを使用することをお勧めします。 それは推奨/可能なアプローチでもありますか?または、とにかくgit bashをインストールするだけですか?

4
Bash:シフト中の使用方法。do..case $ 1 in
私はbashスクリプトに取り組んでおり、「オプション」を実装する必要があります。どうすればbashでできますか? 私の目標は、次の方法でスクリプトを実行することです。 /myscript.sh -d "/var/log/" -c "test" 私が試したこと: while shift; do case $1 in -d) shift&&DIR="$1"||die ;; -c) shift&&COMMAND="$1"||die ;; esac done echo "$DIR" echo "$COMMAND"
5 bash 

2
Mac OS X bashがルートディレクトリの末尾にスラッシュを常に追加するとは限らない
ターミナルバージョン2.2.3(303.2)を使用しています。 問題は、ルートからディレクトリを変更しようとすると、末尾のスラッシュを取得するためにいくつかのディレクトリのタブを二重にする必要があることです。 たとえば、入力を開始します cd /etTab それは私に与えます: /etc その後、必要な末尾のスラッシュを取得するためにもう一度タブを押す必要があります /etc/ そして最後に、Tab単一のタブヒットを使用して、さらにすべてのディレクトリを作成できます。 どうすれば修正できますか?Ubuntuのbashがとても恋しいです。
5 macos  bash 

5
awk printステートメントをチェーンする方法は?
さて、ここに簡単な例を示します。3つの手順でホストのIPV4を分離します。 ip -br a lo UNKNOWN 127.0.0.1/8 ::1/128 eth0 DOWN wlan0 UP 192.168.0.101/24 fe80::9fcd:45fb:1e0f:a1cc/64 ip -br a | awk '/wlan0/ {print $3}' 192.168.0.101/24 ip -br a | awk '/wlan0/ {print $3}' | awk -F '/' '{print $1}' 192.168.0.101 awk(の出力を次のインスタンスにパイプする)の2番目のインスタンスを呼び出す代わりに; どのようにすべてを一度に行うことができますか? 言いたかったのは、質問はの出力を解析することではありませんip。質問を説明するのに役立つ簡単な例が必要でした。これが最初に思いついたものでした。実際の質問はタイトルにまとめられています。 とにかく、それが価値があるもののために(私はそれをチェックする必要がありますが、私はかなり確信しています); これは(最近の)過去に私がやったことです: ip -br a s dev wlan0 | …

1
Alt + 1を実行するには、AliasをBashしますか?
Ubuntuを使用すると、2つのタブを持つ端末を作成できます。 gnome-terminal --tab --tab ただし、デフォルトでは最後に作成されたタブに移動します。を使う Alt + 1 私はそれが最初に行くようにすることができますが、私はキーを押さないようにしたいです。 実行するエイリアスを作成したい Alt + 1 bashで、または同様のコードを直接挿入します。 gnome-terminal --tab --tab -e "alt1" 何か案は?

2
Bashで何千ものCIDR /ネットマスク範囲のIPホストアドレスを素早く効率的にカウントする方法はありますか?
私はIPSetを使って何万ものIPv4 CIDR /ネットマスク範囲を管理していましたが、それらはその後IPTablesルールにリンクされます。この設定はうまく機能していますが、IPSetがクライアントのレポート目的で機能するIPホストアドレスの概要を正確に把握したいと思います。 IPSetエントリのフォーマットは一貫して次のようになっています。 123.456.0.0/16 timeout 86400 だから私は持っている行にgrepすることができます timeout エントリに含まれるCIDR /ネットマスク範囲に基づいて動作する値を取得します。 たとえば、IPSetの出力を(次のようにして)保存したとします。 ipset -L -n > ipset-20181228.txt )というテキストファイルに ipset-20181228.txt そして、の組み合わせを実行します grep そして wc -l このような: grep "timeout" ipset-20181228.txt | wc -l 39,000以上のCIDR /ネットマスクの範囲に相当する39,000以上の項目があります。しかし、それは(もちろん)CIDR /ネットマスクの範囲を数えるだけで、その範囲のIPホストアドレスの全数を数えることはできません。 使用しようとしました prips grepを使用して、CIDR /ネットマスクの範囲をBIDで実際のIPアドレスに拡張します(CIDR /ネットマスクの値を実際のIPアドレスに拡張します)。 grep -oE '(([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])\.){3}([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])\/([0-9]{1,2})' ipset-20181228.txt | awk 'NF { system( "prips " …
4 linux  bash  ip  netmask 

3
シェルプロンプトで長いディレクトリリストを削除します。
シェルプロンプトで現在のディレクトリの長いリストを削除したいのですが。 あなたが小さなシェルウィンドウを使用していて、それがウィンドウ内の全スペースを占めているとき、それは時々迷惑です 私はむしろプロンプトでちょうど現在のディレクトリを好むと思います。 root @ Kiran:〜/ダウンロード/ Director1 / Director2 / Director3 / Director4# 私は以下のようなものを好むでしょう: root @ Kiran:.. Directory4# あるいはもっと良い root:ディレクトリ4# ありがとう
4 linux  bash  shell 

3
トラフィックを記録するためのプロキシとしてnetcatを使う
httpリクエストとレスポンスをファイルに記録するためのプロキシとしてnetcatを使い、それからトラフィックを検査するためにこれらを調整したいのです。 wireharkを考えてください。 'fifo'は名前付きパイプ、 'in'と 'out'はファイル、ポート8080はnetcatプロキシ、ポート8081はserverです。 本当ながら。猫FIFA nc -l -p 8080 |ティーティーインnc localhost 8081 | tee -a out 1> fifo;終わった 問題点 Netcatは最初の要求後に応答を停止します(ループは無視されますか?)。 Netcatがmsgで失敗する localhost [127.0.0.1] 8081 (tproxy) : Connection refused 8081でサーバーが使用できない場合すなわちnetcatの起動時に8081を実行したくありません。


4
GUIまたはコマンドラインを使用してログインしたすべてのユーザーのリスト
特定のユーザーが1日にログインした時間の合計を計算する必要があります。そして、システムをシャットダウンすることによって許可された時間を超えてユーザーがコンピューターの使用を停止する。 uptime これはマルチユーザーコンピュータなので使用できません lastこれは、端末を実行しているユーザーのデータのみが格納されているためです。ユーザーがGUIを使用してログインし、端末を実行せずにコンピューターを使用し続ける場合、エントリーは/ var / log / wtmpに書き込まれません。 必要な情報を見つける方法はありますか?Ubuntu 12.04 LTSを使用しています

1
新しい画面ウィンドウでbashエイリアスを実行するにはどうすればよいですか?
.screenrcには、次のような行がいくつかあります。 screen -t qf1 bash そのため、そのウィンドウでは、現在bashを実行しています。代わりに、特定のURLに対してlynxを実行するbashエイリアスである次のエイリアス「qf」を実行したいと思います。 ただし、次のエラーが表示されます。 "Cannot exec 'qf': No such file or directory" 私はそれがおそらくパスに関係していることを知っていますが、以下を提供します: screen -t qf1 lynx www.google.com どちらも機能しません。私は明らかな何かを見逃していることを知っています。ありがとう!
4 linux  bash 

2
OSX Vs Linux(奇数)でのBash RegEx
これは、RegExを使用するポータブルBashスクリプトのBash開発とコーディングに関するものです。 MacでBash RegExを使用すると、次のことができます。 coconut-mac$ a='bananacoconutman'; [[ "$a" =~ banana(.*?)man ]] && echo FOUND ${BASH_REMATCH[1]} FOUND coconut いいね 多くの場所で役立ちます。のような。 私がこれをしようとすると、失敗します: coconut-mac$ a='<title>coconut</title>'; [[ "$a" =~ \<title\>(.*?)\</title\> ]] && echo FOUND ${BASH_REMATCH[1]} まったく同じコマンドが実行され、完全ペンギンに: coconut-linux$ a='<title>coconut</title>'; [[ "$a" =~ \<title\>(.*?)\</title\> ]] && echo FOUND ${BASH_REMATCH[1]} FOUND coconut どうして? スクリプトを移植可能にするために修正する方法は? 編集:Macの場合: OS X version: …
4 regex  bash 

1
右から左にソートされたls
左から右にソートされたリストの例。 DATA2 DATA4 FILE1 FILE3 右から左にソートされたリストの例。 FILE1 DATA2 FILE3 DATA4 どうすればいいですか?
4 bash  ls 

4
Docker execはエイリアスをロードしません
のDockerコンテナにbashエイリアスをロードしてい/etc/bash.bashrcます。コマンドラインPHPスクリプトへのショートカットとして機能します。これは便利です。コンテナにログインした直後に誰でもそのエイリアスを使用できるためです。 $ docker exec -it my-container bash ただし、次のように、ログインせずにこのエイリアスを1回限りのコマンドで使用できるようにもしたいと思います。 $ docker exec -it my-container my-alias 以外の場所でエイリアスを定義するなど、さまざまなバリエーションを試しましたが/etc/bash.bashrc、このエラーが発生し続けます: rpcエラー:code = 2 desc = ociランタイムエラー:exec失敗:exec: "my-alias":実行可能ファイルが$ PATHに見つかりません 私がウェブ上で見つけた他の提案は、これまでのところトリックをしませんでした。誰でも?

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.