私はしばらくの間vimのデフォルト設定を使用しており、いくつかの変更を加えたいと考えています。ただし、編集~/.vimrcすると/etc/vimrc、などの他のすべての構成設定が上書きされるようです。たとえば、構文の強調表示はありません。vimがロードするものは次のとおりです。 :scriptnames /etc/vimrc /usr/share/vim/vimfiles/archlinux.vim ~/.vimrc /usr/share/vim/vim80/plugin/... <there are a few> 言い換えれば、vimで構成されているものは何でも保持したいのですが、シェルユーザーのマイナーな調整を行います。 どういうわけか~/.vimrc既存の構成に織り込むには何をする必要がありますか、または~/.vimrcデフォルトの構成をロードするために何を入れる必要がありますか? 編集: 私の意図した内容~/.vimrc: set expandtab set shiftwidth=2 set softtabstop=2
「sample」という名前のフォルダーがあり、その中に3つのファイルがあります。サンプルフォルダー内のこれらのファイルを読み取り、curlを使用してHTTPサイトに投稿するシェルスクリプトを書きたいのですが。 フォルダ内のファイルを一覧表示するために、次のように記述しました。 for dir in sample/*; do echo $dir; done しかし、それは私に次の出力を与えます: sample/log sample/clk sample/demo その中に親フォルダを付けています。次のように出力したい(親フォルダー名なし) log clk demo どうすればよいですか?
trapたとえばhttp://linuxcommand.org/wss0160.php#trapで説明されているように使用してctrl-c(または類似のもの)をキャッチし、終了する前にクリーンアップすると、返される終了コードが変更されます。 これはおそらく現実の世界では違いはありません(たとえば、終了コードは移植可能ではなく、その上に、プロセスが終了したときのデフォルトの終了コードで説明されているように常に明確であるとは限らないためです)。それでも、本当にそれを防ぎ、代わりに中断されたスクリプトのデフォルトのエラーコードを返す方法はありませんか? 例(bashですが、私の質問はbash固有のものと見なすべきではありません): #!/bin/bash trap 'echo EXIT;' EXIT read -p 'If you ctrl-c me now my return code will be the default for SIGTERM. ' _ trap 'echo SIGINT; exit 1;' INT read -p 'If you ctrl-c me now my return code will be 1. ' _ 出力: $ ./test.sh …