問題タブ [ksh]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
bash - 同様のディレクトリ構造をトラバースするためのBashショートカットはありますか?
cdKornShell(ksh)には、同様のディレクトリ構造をトラバースするための非常に便利なオプションがありました。たとえば、次のディレクトリが与えられます。
/home/sweet/dev/projects/trunk/projecta/app/models/home/andy/dev/projects/trunk/projecta/app/models
次に、/home/sweet...ディレクトリにいる場合は、次のように入力して、andyの構造内の同等のディレクトリに変更できます。
したがって、kshが2つの引数を検出した場合、現在のディレクトリパスで最初の値をスキャンし、それを2番目の値に置き換えて、そこでcdします。Bashに組み込まれている同様の機能を知っている人はいますか?または、そうでない場合は、Bashを同じように機能させるためのハックですか?
shell - シェルスクリプト内でSQLPlus終了コードをキャプチャするにはどうすればよいですか?
SQL * Plusにログインしてスクリプトを実行するKornShell(ksh)スクリプトがあります。シェルスクリプト内で、実行されたSQLステートメントのステータスコードをキャプチャしたいと思います。現在、SQLにエラーがあり、$?をチェックしてキャプチャできません。sqlステートメントから成功またはエラーコードをキャプチャしてシェルスクリプトに渡すにはどうすればよいですか。
kshスクリプトのスニペット:
SQLスクリプトFBCS003.sql
date - Korn Shellで月の最終営業日を計算する方法は?
この質問が他の言語で回答されているのを見たことがありますが、Korn シェルでは回答されていません。月の最後の営業日にスクリプトが実行されないようにする必要があります (MF は営業日であり、休日は無視されます)。
perl - unix ksh シェル スクリプトまたは perl スクリプトを使用して新しいファイルのフォルダーを監視し、perl スクリプトをトリガーする
私は少しの間グーグルとオーバーフローを行ってきましたが、使用できるものを見つけることができませんでした.
パブリック フォルダーを監視し、新しいファイルの作成をトリガーして、ファイルをプライベートな場所に移動するスクリプトが必要です。
Windowsに/exam/ple/マッピングされたUNIX上のsamba共有フォルダーがあります。X:\特定のアクションでは、txt ファイルが共有に書き込まれます。/pri/vateフォルダーに表示されるtxtファイルを誘拐し、UNIXのプライベートフォルダーに配置したい。そのファイルが移動された後、別の perl スクリプトをトリガーしたいと考えています。
EDIT 誰かがアイデアを持っている場合は、まだシェルスクリプトを見るのを待っています...新しいファイルを監視し、次のようなものを実行するもの:
oracle - シェル スクリプトでの SQL ステートメントの呼び出し
私は Solaris 環境で作業しており、使用している DB は Oracle 10g です。
私が試みているもののスケルトン。
以下を実行する ksh スクリプトを作成します。SQLクエリをシェルスクリプトに含めてステートメントをループする方法がわかりません。したがって、私が試みていることの概要を以下に示します。
処理するファイルをコピーします (フォルダー内の 10 ファイルのリストから一度に 1 ファイル)。
for i in * do cp $i /home/temp を実行します
2. スナップショット(n) テーブルを作成します: n = 1 を初期化します
-- スナップショット テーブルを作成し、SQL にレコードを挿入します
- テーブルが正常に作成されたかどうかの確認:
select count(*) from snapshot1 -- テーブル内のレコード数を照会します -- 常に固定、たとえば 400000
テーブルの作成に成功すると、
echo " select max(value) from results_all " -- 最大値をコンソールに出力
次のジョブを使用してファイルを処理します。
./runscript.ksh - READ -i $m( m - 初期値 001 )
./runscript.ksh - WRITE -i $m( m - 初期値 001 -- READ process_id と同じ )
-- m を 1 ずつ増やします
成功ログを待つ
テール -f ログ ($m)* | -egrep "^成功"
step1 to へのループ: ファイル 2 を一時フォルダーにコピーします。スナップショット (n+1) テーブルを作成する
すべてのファイルが処理のためにコピーされたら終了します。
done -- ステップ 1 の終了
私を動かすための指針は非常に価値があります。
ありがとう、
クリス
bash - ksh{list;のようなコマンドのcshリスト }
ボーン互換シェルでは、{ list; }構文により、新しいシェルを開かずに、コマンドの完全なリストが実行前にシェルによって読み取られます。cshに似たものはありますか?
ありがとう。
shell - ksh を使用したホーム、終了、削除、ページアップ、ページダウン
kshでhome、end、delete、pageup、pagedownを使いたい。私の TERM は xterm-color です。これらのキーは tcsh と zsh では正常に機能しますが、ksh では機能しません (チルダを出力してください ~)
私はこれを見つけました:
しかし、バインドキーを 1 つ設定すると、最後のバインドキーが機能しなくなります。
.kshrc を使用して ksh でこれらのキーを使用するにはどうすればよいですか?
ありがとう。
sybase - Sybase bcp エラーを確実にキャッチするにはどうすればよいですか?
オンザフライで出力を圧縮できるように、Sybase bcp で名前付きパイプを使用しています。
Sybase bcp ユーティリティは、終了コードで多くの情報を返しません。Sybase のドキュメントでは、プロセスによって書き込まれたエラー メッセージを調べるようにユーザーに指示しています。
これは、私たちが使用するエラー処理イディオムの言い換えです。例を短くするために、スクリプトの非 bcp 部分の一部のエラー チェックが削除されています。
基本的に、「deadlock」という単語が bcp 出力メッセージに表示される場合、再試行します。
2 つの質問
- このアプローチは合理的に見えますか?
- デッドロック以外に心配する必要がある bcp エラーは何ですか?
特に一時的な bcp エラーの検出に関心があり、再試行できます。
複合ステートメントを使用して、圧縮前に bcp データの周りにヘッダーとフッターを挿入できるようにしていますが、例を簡略化するために省略しています。
bash - スクリプトの実行中の問題
以下のように実行する必要があるUNIXシェルスクリプトがあります
スクリプトの内容は
XYZ の値を使用するためにset -k、スクリプトを実行する前に実行する必要があります。
スクリプトを実行する前に doint set -k なしでこれを行う方法はありますか。または、以下の方法でスクリプトを実行しているときに指定されたパラメーターの値を使用できるスクリプトでできることはありますか
私はkshを使用しています。どんな助けでも大歓迎です。
bash - 大きなファイルを表示するためのUNIXでの最適なツール
私はunixの初心者です。を使用して UNIX で大きなログ ファイルを表示する際に問題に直面していますvi。UNIX で大きなファイルをすばやく表示するための最適なツールを教えてください。さらに、UNIX で大きなファイルを表示する独自の方法を投稿していただけますか?