Unix & Linux

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

2
vimを使用して現在のディレクトリとすべてのサブディレクトリにあるすべてのファイルを開くにはどうすればよいですか?
これまでのところ、現在のディレクトリにあるファイルではなくvim */**、サブディレクトリにあるすべてのファイルを開くように見え、ディレクトリにあるすべてのファイルを開くを使用してきました。しかし、どうすれば現在のディレクトリとすべてのサブディレクトリにあるすべてのファイルを開くことができますか?vim *current
8 vim 

3
リモートのRed-Hatマシンで漢字を正しく表示する方法
Ubuntu14.04を使用してリモートホストに接続しています。 そのバージョンは次のとおりです。 Linuxバージョン2.6.32-431.11.5.el6.yyyzzz.x86_64(gccバージョン4.4.7 20120313(Red Hat 4.4.7-4)(GCC))#1 SMP Thu Jul 3 09:42:34 CST 2014 そのマシンのアップロードファイルで漢字が正しく表示されません。ファイルを開き、Ubuntuでランダムに漢字を入力しますibus input method。そしてそれは示しています: ~R~V�~K~B~I~W个~I~N~T�饭~T~E オンラインで検索し、次の2つの方法を試しました。 1:ロケールを調べる It shows: LANG=en_US.UTF-8 LC_CTYPE="en_US.UTF-8" LC_NUMERIC=en_US.UTF-8 LC_TIME=en_US.UTF-8 LC_COLLATE="en_US.UTF-8" LC_MONETARY=en_US.UTF-8 LC_MESSAGES="en_US.UTF-8" LC_PAPER=en_US.UTF-8 LC_NAME=en_US.UTF-8 LC_ADDRESS=en_US.UTF-8 LC_TELEPHONE=en_US.UTF-8 LC_MEASUREMENT=en_US.UTF-8 LC_IDENTIFICATION=en_US.UTF-8 LC_ALL= 問題ないようです。 2:中国語サポートパッケージをインストールする やった: yum install "@Chinese Support" そのマシンに178Mのファイルをインストールしました。 その後、別のファイルを開き、ibusで中国語を入力してみます。しかし、問題は残っています、それをどのように解決しますか? update1 後でさらに調査を行いました。一部の文字は(ピンイン入力方式、ibusを介して)正しく入力できることがわかりました。お気に入り: 起 度 顿 客 …

4
Skypeバージョンのなりすまし?
Microsoftは古いバージョン(現在の4.3.0.37より前)のskypeサービスを終了することを明らかにしました。私は仕事のためにスカイプをひどく必要としているので、それはあまりにも悪いです。私は古いMandrivaディストリビューション(1)を使用しているので、最後に動作したバージョンは2.2.0.25(2)でした。私はこのシステムがスムーズに実行されているので気に入っています。スカイプのためだけに変更する必要はありません。VMwareマシンもインストールしたくない。そのため、昨日からログインしようとすると、エラーメッセージが表示されますserver connection failed。不思議なことに、私は簡単にskyperootとして実行した後、再びログインできましたが、それ以上はできませんでした。次に、別のユーザーを作成してskype、そこから実行しました。運が悪い。サーバーが実行中のskypeクライアントのバージョンを読み取って、接続を拒否したのではないかと思います。 または、ここでのメカニズムは何ですか?それをどうにかして回避できますか?私はすぐに、バージョン4.3.0.37を偽装して、このクライアントを実行しているとサーバーに思わせ、接続を許可する可能性があるとすぐに思いました。これを具体的に実現する方法を知っている人はいますか?他のアイデアは? Linux version 2.6.31.13-desktop-1mnb (qateam@titan.mandriva.com) (gcc version 4.4.1 (GCC) ) #1 SMP Tue Apr 27 20:37:44 EDT 2010 skype-2.2.0.25-69.1mib2010.2.i686.rpm PS:他の代替サービスではなく、スカイプ機能が必要です。私が話をする必要がある人々はスカイプしか持っておらず、能力も別のサービスを使う意欲も持っていません。 PPS:私が今やったのは、386 mb sd ramを搭載したduron 1 ghzマシンである非常に古いデスクトップコンピューターを構築することです。その上にWin XPをインストールした+ SP3。動作しないスカイプをインストール。次に、「古いPC」用のスカイプの別のバージョンが提供されました。これをインストールすると、正常に電話をかけることができます。それは私の好みの解決策ではありませんが。

3
リンティアンは何のためにありますか?
私はhttps://lintian.debian.org/を読みましたが、それが単純な言葉で何を意味するのか理解していません。lintianによって違反および検出されるdebianポリシールールの例はどれですか?
8 lintian 

1
sudo-ユーザーを偽装
別のユーザーとしてコマンドを実行できるように、sudoコマンドとsudoersファイルを正しく使用しようとしています。 sudoersファイルを次のように設定しています。 beans ALL = (root,apache) NOPASSWD: /opt/renovations/var/script-*.sh root、apache、およびBeanは、グループBeanの一部です。 また、/ optには755の権限があり、/ opt / renovationsディレクトリとそのサブディレクトリはBeansユーザーとグループが所有しています。 Beanとして実行しようとしているコマンドは次のとおりです。 sudo -n -u apache -i /opt/renovations/var/script-test.sh -n:これはcronによって実行されるため、パスワードの入力を求められません -u:は、Apacheユーザーを偽装できるようにするためです -i:は、ログインをシミュレートするためです。が読み込まれます。これは、.profileの環境変数にアクセスするために必要です。 問題は、sudoコマンドを実行すると、次のメッセージが表示されることです。 sudo:申し訳ありませんが、sudoを実行するにはパスワードが必要です これをAIXとUbuntuの両方で実行してみましたが、問題は両方のシステムにあります。これは私が実行すると動作します: sudo -n -u apache /opt/renovations/var/script-test.sh しかし、-iがないと、私の環境には、そこに必要なすべての環境変数が含まれていません。 これを可能にするために、sudoersファイルで更新する必要があるものはありますか?
8 sudo  users 

3
ルートと私のパスワードは同じです
cat /etc/shadowrootと私のユーザーの暗号化されたパスワードを取得できる場合。 これらのパスワードは各アカウントで同じですが(私は知っていますが、セキュリティが悪い)、/etc/shadow暗号化された異なる文字列として表示されます。 どうして?それぞれに異なるアルゴリズムが使用されていますか?

2
ケースステートメント外の変数の割り当て
多くの言語では、caseステートメント内で変数の割り当てを何度も繰り返すのではなく、case / switchステートメントの結果を変数に割り当てることができます。Bashシェルでこのようなことを行うことは可能ですか? color_code=$(case "$COLOR" in (red) 1;; (yellow) 2;; (green) 3;; (blue) 4;; esac) (または、余談ですが、他のシェルでは?)


2
プロセスが実行している命令を判別する方法は?
私はstraceとltraceについて知っていますが、それはそれぞれ、プロセスが実行しているシステムコールとライブラリコールを教えてくれるだけです。プロセスが実行している命令を正確に知りたいのですが。アセンブリ、または可能であればCとアセンブリの間の何らかの中間点。バイナリがデバッグシンボルでコンパイルされていないと仮定すると、可能性が高いので、最初のオプションに傾倒します。 使用例:プロセスがハングしているように見え、straceまたはltraceからの出力がありません。プロセスが「何か」を実行しているかどうかを確認します。これは停止の問題を解決することに似ていると思うので、これを判断するのは難しいかもしれないと思います。ただし、有用なデータを収集できる可能性があります。 2番目の使用例:好奇心。アセンブリ命令のリスト全体をテキストリストにダンプすると興味深いでしょう。 私の推測では、gdbを使用してこれを行うことができますが、これは私が作成したプログラムのデバッグについてではなく、gdbを使用して実行中のプロセスの状態をチェックするためです。 OSはCentOS 6です。


1
シェルスクリプトを配布する適切な方法
シェルの動作が変更可能でset予測できない場合、シェルスクリプトを配布する最も適切な方法は何ですか? たとえば、rm *.txt実行された環境では期待どおりに実行されませんset -f。がどのrm *.txt環境でも現在のディレクトリにあるすべてのテキストファイルを削除することを確認するにはどうすればよいですか? 一般的に配布する前に、シェルスクリプトが期待どおりに実行されることを確認するにはどうすればよいですか?

1
Dmenuが一部のプログラム(emacsなど)を起動しない—ログファイルはありますか?
Arch Linuxでdmenuを使用してdwmを実行しています。dmenuが動作している間は、emacsなどの一部のプログラムは起動しませんが、コマンドはオートコンプリートで表示されます。ターミナルで起動すると、正常に動作します。 私に何ができる?dmenuのエラーログファイルはありますか?
8 arch-linux  dwm  dmenu 

4
ブレース展開中に生成された引数間のスペースを抑制するにはどうすればよいですか?
次のコマンドを使用して、テストするURLのリストを作成しました。 echo -e localhost:8080/reports/{promos,promo-updates,scandown}/{130,139,142}{,-unburdened,-burdened}{,.pdf,.xls,.xlsx,.csv,.preload}"\n" >> urls.txt 残念ながら、urls.txtそれぞれに追加されたURLの前にはスペースがありました(もちろん、最初のものを除きます)。それがなぜ起こったのか理解しており、sed式をパイプ処理することでそれを取り除くことができることを理解していますが、代わりにそれを抑制する方法があるかどうか知りたいです。(それはばかげて、見た目が悪いように見えるかもしれませんが、多くの人々が「猫を虐待しない」と感じるので、好みと同じです。) 私が試した、二重引用符抑制単語分割にするので、それは何の-行くんでした、が、それはあまりにもブレース展開を抑制しました。 IFSを空の文字列に変更しようとしましたが、うまくいきませんでした。 IFS='' echo -e localhost:8080/reports/{promos,promo-updates,scandown}/{130,139,142}{,-unburdened,-burdened}{,.pdf,.xls,.xlsx,.csv,.preload}"\n" >> urls.txt また、改行に変更しませんでした。 IFS='\n' echo -e localhost:8080/reports/{promos,promo-updates,scandown}/{130,139,142}{,-unburdened,-burdened}{,.pdf,.xls,.xlsx,.csv,.preload}"\n" >> urls.txt

2
プログラムを実行し、クラッシュせずに終了した場合に再度実行するBashスクリプトを作成する
MacOSXでアプリを実行するbashスクリプトを作成する最も簡単な方法を知りたいです(これはUNIXベースのシステムなので、これが正しい場所だと思いました)。プログラムが終了するのを待ちます。出口がクラッシュではなかった場合は、もう一度実行します。それ以外の場合は、クラッシュレポートウィンドウを開いたままにして終了します。 このスクリプトは、クラッシュまたは手動で終了するまで永遠に実行させてください。 私は漠然とした考えを持っていますが、よくわかりません。ここに私がこれまで持っているものがあります: echo "Launching Autorun…" if ["$1" -eq "0"]; then # Application exited successfully. Restarting. /path/to/application.app else # An error occured. Do nothing and exit. exit fi

4
ifステートメントのあるawk
awkを使用してファイルから印刷しようとしていますが、出力が空です。これが私のコードです accountNum=$1 while read -r LINE || [[ -n $LINE ]] ; do awk -F',' '{ if($1==accountNum) { print $3.$2 } }' Accounts done < Accounts 私もこれを試しました: accountNum=$1 while read -r LINE || [[ -n $LINE ]] ; do echo $LINE | awk -F',' '{ if($1==accountNum) { print $3.$2 } …
8 shell  scripting  awk 

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