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

Bash(Bourne-Again SHell)は、Ubuntuのコマンドラインインターフェースでデフォルトで使用されるシェルです。



2
PS1で機能が再評価されないのはなぜですか?
私は関数によって動的に設定されたプロンプトの一部を持っているようにしているので、私の.bashrc中で: asdf () { echo -n $(pwd) } PS1="\u@\h:\w $(asdf)\$ " シェルを開くと、最初に期待するものが得られます。 $ bash darthbith@server:~/test /home/darthbith/test$ ただし、ディレクトリを変更しても、関数によって定義された部分は変更されません。 darthbith@server:~/test /home/darthbith/test$ cd ~/test2 darthbith@server:~/test2 /home/darthbith/test$ 私の実際の目標は、git-prompt.shスクリプトを使用してgitリポジトリのブランチをきれいな色やすべてのものと一緒に表示することですが、問題はリポジトリを変更してもブランチ名が更新されないことです。上記の些細な例は、私の質問のために思いつく最も簡単な複製です。 .bashrc私はgitのプロンプトスクリプトを統合する必要があることライン: source ~/.git-prompt.sh PS1="\[\033[01;32m\]\u@\h\[\033[00m\]:\[\033[01;34m\]\w\[\033[00m\]$(__git_ps1)\$ "

4
TomcatはJAVA_HOMEを認識しません
Ubuntu 14.04サーバーをインストールし、JDK1.8u5とTomcat7を抽出し、.profileに次を追加しました(同様の[非]結果で.bashrcに追加しようとしました)。 export JAVA_HOME=/opt/java/jdk1.8.0_05 export PATH=$PATH:$JAVA_HOME/bin 実行するecho $JAVA_HOMEと、期待される結果が得られ/opt/java/jdk1.8.0_05ます。java -versionJavaを実行して、正しい応答を取得することもできます。ここまでは順調ですね。 だから今、私はTomcatを起動しようとしました(catalina.shも試してみました)、次のようになります: user@ubuntu:~$ sudo /opt/tomcat7/apache-tomcat-7.0.53/bin/startup.sh Neither the JAVA_HOME nor the JRE_HOME environment variable is defined At least one of these environment variable is needed to run this program しかし...私はちょうど試してみましたがecho $JAVA_HOME、うまくいきましたか?


1
名前を入力するだけで端末からファイルを開く
私はそれxdg-openが端末から次のようなユーザーの好みのアプリケーションでファイルを開くことを知っています: xdg-open filename しかし、次のように入力するだけで、既定のアプリケーションの現在のディレクトリからファイルを開くにはどうすればよいのでしょうか。 filename 続いてEnter、もちろん。これ以上何もない。

3
configure:エラー:Cコンパイラは実行可能ファイルを作成できません
を使用してrvmをインストールしようとしていました\curl -L https://get.rvm.io | bash -s stable --ruby --autolibs=enable --auto-dotfiles。構成エラーが表示されるまで問題なく動作しました。 Error running './configure --prefix=/home/nishant/.rvm/rubies/ruby-2.0.0-p247 --disable-install-doc --enable-shared', please read /home/nishant/.rvm/log/1379591052_ruby-2.0.0-p247/configure.log There has been an error while running configure. Halting the installation. 上記のログファイルの内容は次のとおりです。 [2013-09-19 17:15:58] ./configure current path: /home/nishant/.rvm/src/ruby-2.0.0-p247 command(4): ./configure --prefix=/home/nishant/.rvm/rubies/ruby-2.0.0-p247 --disable-install-doc --enable-shared checking build system type... i686-pc-linux-gnu checking host system …
15 12.04  12.10  bash  gcc 

4
bashスクリプトを介してユーザーアカウントを追加する適切な方法
現在使用しているスクリプトコードは次のとおりです。 getent group $MYGROUP if [ $? -ne 0 ] ; then sudo su -c "groupadd $MYGROUP" fi sudo su -c "useradd mynewuser -p mypassword -m -g $PRIMARYGRP -G $MYGROUP" このアプローチはopenSuseでうまく機能します。しかし、Ubuntuで作成されるユーザーアカウントにはいくつかの問題があるため、ここで助けを求めています。 端末プロンプトが設定されていません(echo $PS1何も返しません) 端末で矢印キーとタブキーが正しく機能しない パスワードが機能しないようです(この問題が何であるかはまだ明確ではありませんが) この新しいユーザーに設定された/ etc / sudoers権利は尊重されません 代わりにadduser(useraddではなく)を使用して手動でユーザーを作成した場合、Ubuntuではこれらの問題は発生しません。ただしadduser、openSuse(afaik)では使用できません。したがって、Debian専用ではないスクリプト、またはUbuntuで動作する(そして他のディストリビューションで動作を停止しない)bashスクリプトを介してユーザーアカウントを追加する方法が必要です。 最後に、私は理解したいと思い違いの間adduserとをuseradd。たとえば、どのスケルトンディレクトリが使用されadduserているのかを知りたいのですが、それが理由useraddで期待どおりに機能しない可能性があります(デフォルトを受け入れたためです)。 ありがとう
15 bash  scripts  users  adduser 


4
端末のコマンドラインを使用してホスト名を取得する方法は?
私はipアドレスとmacアドレスを取得するために端末でarp-scanを使用しましたが、とにかく端末にあるipaddressのホスト名を知ることができますか?たとえば、同じルーターに接続されているA-pcとB-pcとC-pcがあります。arp-scanで結果を取得したのと同じ方法でホスト名を取得する必要があります。コマンドはありますか?これに返信してください。ありがとうございました。 PS:wiresharkやその他のソフトウェアを使いたくありません。端末コマンドがあると便利です。


1
shopt -s extglobの目的は何ですか
ディレクトリ以外のすべてのファイルを削除したかった。ここで解決策を見つけました。このソリューションはコマンドを使用しています shopt -s extglob このコマンドが正確に何をしているのか、バックエンドの知識を知りたかった。この回答にもコメントを追加しましたが、今まで返信がありませんでした。Ubuntuの新規ユーザーとして、このコマンドが何をしているのか知りたいです。

4
すべてのUbuntuログ/端末履歴はどこに保存されますか
ログとキー履歴はどのフォルダーに保存されるので、それらを削除するスクリプトを作成できます。ハイバネーションパーティション用の特定のフォルダーや、RAMデータをハイバネーションに保持するファイルはありますか?誰かがすべてのコマンド履歴/プログラムロード履歴/プログラム実行履歴を削除したいのですが、どこに行きますか? サンクスライト

4
bashスクリプトを作成するとき、現在のファイルの場所の絶対パスを取得するにはどうすればよいですか?
というbashファイルがあるとしmyBash.bashます。次の場所にあります。 /myDirect/myFolder/myBash.bash ここで、スクリプト内/myDirect/myFolderで文字列(の場所myBash.bash)を使用します。この場所を見つけるために使用できるコマンドはありますか? 編集:アイデアは、そのzipファイル内のbashスクリプトによって開始できるコードでzipフォルダーをセットアップすることです。私はそのzipファイル内のコードの相対ファイルパスを知っていますが、絶対パスは知りません。それらが必要です。1つの方法は、パスにハードコードするか、ファイルのパスを変数として指定することです。ただし、bash-fileがそれ自体の場所を把握し、zipファイルの構造に関する知識から他のファイルへの関連するパスを作成することが可能であれば、より簡単になります。

4
bashでディレクトリパスを見つけるときに正規表現を渡す方法は?
ディレクトリに名前が付けられているanacondaかminiconda、ユーザーにあるかを確認するために、小さなbashスクリプトを作成しました$HOME。しかしminiconda2、自宅のディレクトリは見つかりません。 どうすれば修正できますか? if [ -d "$HOME"/"(ana|mini)conda[0-9]?" ]; then echo "miniconda directory is found in your $HOME" else echo "anaconda/miniconda is not found in your $HOME" fi PS:私が持っている場合[ -d "$HOME"/miniconda2 ]; then、それはminiconda2ディレクトリを見つけるので、エラーは部分にあると思います"(ana|mini)conda[0-9]?" スクリプトを一般的にしたいです。私にとっては、miniconda2ですが、他のユーザーにとっては、anaconda2、miniconda3などになる可能性があります。

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