Unix & Linux

Linux、FreeBSDおよび他のUn * xのようなオペレーティングシステムのユーザーのためのQ&A

1
bashでの複数行の貼り付けを防止する
私はよくctrl+cguiアプリケーションからテキストをコピーし、右マウスクリックメニューを使用してターミナルエミュレーター(ターミネーター)に貼り付けて貼り付けます。クリップボードに複数の行が含まれていることを忘れることがあります。bashに貼り付けると、各行が「実行」されます 複数行の貼り付けを完全に防ぐための解決策はありますか?

3
PuTTY、CygwinX、およびX11転送接続が拒否されました
KiTTY / PuTTYを使用してX11をCygwinXに転送できなくなりました。 X11転送を許可するように正しく構成されているUbuntu Server 14.10マシンに接続しています。私は午前 Cygwinののxtermや他のLinuxマシンからを使用して、X11転送を開始することができます。 Win7でCygwinX [1.7.34(0.285 / 5/3)]とKiTTY 0.64.0.1(PuTTYフォーク、PuTTYも試しました)を使用しています。 表示変数を確認し、Cygwin xtermでxhostアクセス制御を無効にしてみました。 $ echo $DISPLAY :1 $ xhost + access control disabled, clients can connect from any host 私のKiTTY / PuTTYはX11転送を有効にするように構成されており、正しいディスプレイが設定されています。私は:1と:1.0を試しました。 サーバーにSSH接続すると、DISPLAY変数が設定され、xauthが更新されます。.Xauthorityを削除し、再作成して確認しました。 user@server:~$ echo $DISPLAY localhost:10.0 user@server:~$ xauth list server/unix:10 MIT-MAGIC-COOKIE-1 3983b2d7f3d5f9f66d9796997771bf82 X11アプリケーションを起動しようとすると、次のエラーが発生します。 user@server:~$ xterm KiTTY X11 proxy: …
10 linux  x11  cygwin  putty 

6
awk内にファイルが存在するかどうかをどのように確認しますか?[-d 'ファイル名']失敗
存在しないホームディレクトリセットを持つユーザーのリストを生成しようとしています。これはawkで実行できるはずですが、構文に問題があります。 ]で「無効な構文」と何度も言われます。何が悪いのですか? awk -F: '{ if(![ -d "$6"]){ print $1 " " $3 " " $7}}' /etc/passwd 私がおそらく最終的に使用するコードは次のとおりです。 awk -F: '{if(system( "[ -d " $6 " ]") == 1 && $7 != "/sbin/nologin" ) {print "The directory " $6 " does not exist for user " $1 }}' /etc/passwd そして、私はここに関連する質問があります。
10 bash  awk  directory 

3
「read」を使用してスクリプトをパイピングしてbashする
私はそれを通すことによって、スクリプトを実行する必要があるbashとwget(いうよりはbashで直接それを実行しています)。 $ wget -O - http://example.com/my-script.sh | bash スクリプトにreadステートメントが含まれているため、機能しません。何らかの理由で、bashにパイプする場合、これらは機能しません。 # Piping to bash works in general $ echo 'hi' hi $ echo "echo 'hi'" | bash hi # `read` works directly $ read -p "input: " var input: <prompt> # But not when piping - returns immediately $ echo 'read …
10 bash  shell  pipe  read 


6
ファイル内のパターンのN番目の出現のみを置き換える方法は?
sedコマンドを使用してファイル内の3番目の文字列を置き換える方法。 例: 唯一の第三の発生を変更isするusファイルに。 私の入力ファイルには以下が含まれます: hai this is linux. hai this is unix. hai this is mac. hai this is unchanged. 私は出力が期待されています: hai this is linux. hai thus is unix. hai this is mac. hai this is unchanged.

3
コマンドライン引数として数値をどのように追加しますか?
コマンドラインから1つの数字と、デフォルトのように1つの数字を追加しようとしています。例:ユーザーが50を入力すると、スクリプトは10を追加します(デフォルトの数として)。 ./script 50 The sum of 50+ 10 is 60. これが今のところです。 echo -n "Please enter a number: " read number default = 10 sum = $((default + number)) // this line does not seem to work echo "The sum of $number and 10 is $sum." 構文が間違っていますか?私が正しい軌道に乗っているかどうかはわかりません。数字を間違って追加していますか?代わりにawkを使用する必要がありますか? let sum = $default …
10 bash 

7
Linuxでルートとしてグーグルクロムを実行する方法
ルートとしてgoogle chromeを実行したい場合、次のタイトルのエラーメッセージが表示されます。 Google Chromeをrootとして実行することはできません メッセージの本文は次のとおりです。 rootとして実行するには、プロファイル情報を保存するための代替--user-data-dirを指定する必要があります。 誰かが私を助けてくれますか?

3
$ PWDを変更した後、bashでコマンドを実行するにはどうすればよいですか?
zshは、ユーザーがディレクトリを変更した後に関数を実行するためのものなど、いくつかの素晴らしいフック関数を提供しますchpwd。 # zsh only function greet() { echo 'hi'; } chpwd_functions+=("greet") cd .. # hi pushd # hi popd # hi 私はそれをbashでエミュレートしようとしています。 制約: インタラクティブシェルと非インタラクティブシェルの両方で機能する必要があります。つまり、次のようなものに依存することはできません $PROMPT_COMMAND cdディレクトリを変更する任意のコマンド(例:pushdおよびpopd)で機能させるため、再定義できません。 これは、実行する必要があります後ので、ユーザーの指示trap "my_function" DEBUG私は何とかそこに言うことができない限り、仕事は「最初の実行、ない$BASH_COMMAND、我々は閉じ込められ、その後もこれを行う...」私はの自動実行を回避できることがわかり$BASH_COMMAND 場合が extdebug有効になっていますそして、trap関数は1を返しますが、強制したくないと思います。成功した(ただし変更された)コマンドにextdebug戻るの1は間違っているようです。 最後の部分-「ユーザーのコマンドの後に実行」-は現在私が困惑しているものです。各コマンドの後に関数を実行できる場合は、前回チェックしてからディレクトリが変更されたかどうかをチェックすることができます。例えば: function check_pwd() { # true in a new shell (empty var) or after cd if [ "$LAST_CHECKED_DIR" != …
10 bash  hook  pwd 

3
バッシュで、エイリアスに余分な引数を含めない方法は?
私は次のようなことをしようとしています alias ftp='echo do not use ftp. Use sftp instead.' ftp誤って使用されることはありません。しかし、私はそれに気づきました ftp abcd.com コマンドをエコーさせます do not use ftp. Use sftp instead. abcd.com ためabcd.comの引数であると解釈されますecho。 Bashをabcd.com置換に追加しないようにする方法、またはechoそれを追加の引数として使用しないようにする方法はありますか?(各アプローチの解決策はありますか?) できると思った alias ftp='sftp' しかし、コマンドを一緒に停止させて、使用しないように気づかせたいだけですftp。
10 bash  alias  ftp  echo 


2
if-elseステートメントでgrepを使用する[終了]
休業。この質問には詳細または明確さが必要です。現在、回答を受け付けていません。 この質問を改善してみませんか?詳細を追加し、この投稿を編集して問題を明確にしてください。 5年前休業。 入力した文字列がファイルにない場合、コードが出力されないのはなぜですか。文字列を入力してもファイルにない場合は、応答がなく、最初に戻ります。誰かが私のコードの何が悪いのか教えてもらえますか? while : do echo "Please enter a string" read input_string echo "Please enter the file name too see if that string is present in it - (Enter .abw after)" read input_string1 if grep -q $input_string $input_string1 ; then echo "Your string has been found" fi done

4
`tail -f / proc / $ pid / fd / 1`できないのはなぜですか?
私はechoそのPID を示す簡単なスクリプトを書きました。 #/bin/bash while true; do echo $$; sleep 0.5; done 私は38441つのターミナルで上記のスクリプト(何度も何度も言う)を実行してtailおり、別のターミナルでファイル記述子を試行しています。 $ tail -f /proc/3844/fd/1 画面には何も表示されず、までハングし^cます。どうして? また、すべてのSTDファイル記述子(IN / OUT / ERR)は同じptsにリンクしています。 $ ls -l /proc/3844/fd/ total 0 lrwx------ 1 mg mg 64 sie 29 13:42 0 -> /dev/pts/14 lrwx------ 1 mg mg 64 sie 29 13:42 1 -> /dev/pts/14 …

4
$ 1が1でなくても、 'if [$ 1 =“ 1”]'ブランチが常に選択されるのはなぜですか?
次のような「teleport.sh」という名前のシェルスクリプトがあります。 if [ $1="1" ]; then shift mv "$@" ~/lab/Sun elif [ $1="2" ]; then shift mv "$@" ~/lab/Moon elif [ $1="3" ]; then shift mv "$@" ~/lab/Earth fi 私が実行すると: sh teleport.sh 2 testfile これtestfileは~/lab/Sunディレクトリに移動されますが、そのスクリプトに1または '1'を渡さなかったため、非常に混乱しています。 ここで何が問題になっていますか?
10 bash  shell  test 

4
端末で単一のピクセルを描画する方法は?
これまでは、端末で画像や図形などを文字で描きました。 単一のピクセルを描くことは可能ですか? まあ言ってみれば: foo 1 1 red これにより、座標に赤いピクセルが描画され(1, 1)ます。 この仕事をする既存のアプリケーションはありますか? 現在Ubuntu 14.04を実行しています。
10 terminal  images 

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