最新記事

複数の個別ジョブに1つの入力ファイルを使用する方法
shell
scripting
memory
images
imagemagick

複数の個別ジョブに1つの入力ファイルを使用する方法

ファイルを読み取り、さまざまなパラメータを使用して複数のタスクを実行し、最終的に各出力を別々のファイルとして保存したいと思います。 現在、私は以下のコードスニペットに示すようにこれを行います。これは実際に画像を変更することなく各反復で画像を読み取る。大きな画像(ここでは400 MB)の場合、速度は非常に遅くなります。メモリが十分に大きくてメモリにロードしてメモリから一度だけ処理しても大丈夫です。しかし、どうすればいいのかわかりません。 ImageMagick以外のシェルにはありません。 ImageMagickこれを行うための基本的な方法はありますか? メモリマッピングファイルシステムにファイルを一度コピーし、以下のスクリプトを使用するのが最も簡単ですか? #!/bin/sh FILE=foo.tif i=65;END=80;STEP=1 while [ $i -le $END ]; do convert $FILE -threshold ${i}\% ${i}.png & i=$((i+$STEP)) done もしシェル部分POSIX規格を維持します。編集:取得したコアを活用するためにバックグラウンドでサブプロセスを開始しました。

Admin

スクリプトが機能しない - スクリプトの新機能
scripting

スクリプトが機能しない - スクリプトの新機能

ディレクトリ名を含むパラメータを受け入れ、そのパラメータがあるかどうかを確認するスクリプトを作成しようとしています。スクリプト名はscript_practice_3.shでなければならず、blcをスクリプトに渡す必要があります。例: ./script_practice_3.sh blc 何らかの理由で私のスクリプトがうまくいかない理由はわかりません。私はUnixスクリプトに精通しており、これは本当に残念です。 #!/bin/bash echo "What is the parameter name that contains the script name: " read SCRIPT echo "What is the parameter name that contains the value blc: " read VALUE if [ "$?" = "0" ] then echo "You must provide one parameter" elif [ "$?" > "1" ] then echo "You must provide only one parameter" else test -d $SCRIPT if [ "$?" = "0" ] then echo "Already exists" else mkdir $VALUE echo "directory created" fi

Admin

Konsole --new-tab: 既存の konsole インスタンスを選択します。
linux
command-line
scripting
gnome-terminal
konsole

Konsole --new-tab: 既存の konsole インスタンスを選択します。

私は通常いくつかあります。コンソール複数のデスクトップのWindows。 走るkonsole - 新しいタブ既存のウィンドウ内で新しいタブを開くように設計されていますが、目的のウィンドウにはまったく入らないようです。これはとても退屈です。 実は1位に行ったようです。コンソールインスタンスが起動し、次の場所に移動したいと思います。最後のもの発射(方法GNOME端末 - タブ動作するはずですが、mtシステムでは動作しないようです。オペレーティングシステム6)。 - 会議役に立ちません。 解決策はありますか?

Admin

ファイルをGoogleドライブに移動するスクリプト
linux
shell-script
centos
scripting
google-drive

ファイルをGoogleドライブに移動するスクリプト

デスクトップGUIを持たないCentOS 7サーバーがあります。インバウンド/アウトバウンドのVOIP通話録音に使用され、今日録音した内容をGoogleドライブにコピーする予定です。 Google Drive Linux準拠のアプリケーションを複数見ており、g-driveを除いて以前にテストサーバーで使用したことはありません。私の録音はすべて/home/recordingsに保存されます。 今日の日付が2019年2月25日のGoogleドライブに新しいフォルダ(私のGoogleドライブアカウントの「myrecordings」という特定のフォルダにあります)を自動的に生成するスクリプトが必要です。フォルダを作成したら、/home/recordingsのすべての録音* .wavファイルをgoogledrive/myrecordings/(今日の日付フォルダ名)にコピーする必要があります。 事前にありがとう

Admin

perl regex - (\ s * / / \ s *)で始まらないfoobarを一致させる方法
scripting
regular-expression
perl

perl regex - (\ s * / / \ s *)で始まらないfoobarを一致させる方法

基本的に、次のようにコメントされていない行でfoobarを探したいと思います。 // foobar # do not match me foobar # match me otherfoobar # do not match me コメント行を一致させるには、次を使用します。^(\s*//\s*)\bfoobar\b.*$ コメントアウトされていない行を一致させる方法は? メモ: 不要な努力を避けるために、答えを「^...$」に制限してください。これは、一致のためにPerlに送信された文字列内でのみ実行する必要があります。 また、foobarは\ bfoobar \ bのように完全に一致する必要があります。 最後に、 \bfoobar\b の前には、スペースやコメントの署名を除く任意の文字を含めないでください。

Admin

トラップ機能のエコーを再び標準出力にリダイレクト
bash
scripting

トラップ機能のエコーを再び標準出力にリダイレクト

現在、トラップ関数の echo 文を標準出力に出力する際に​​問題があります。実行したコマンドのすべての出力(エラーおよび標準出力)をログファイルにリダイレクトします。しかし、エラーが発生した場合は、エラーをログファイルの代わりにstdoutにリダイレクトしたいと思います。 似たようなことをしようと思っていますtrap 1> on_exit EXIT。しかし、私はそれについて何も知りません。どうすればいいですか? 編集する: 説明のために、意図的にすべての出力(stderrとstdout)をログファイルにリダイレクトしました。いつでもエラーが発生した場合は、コマンドのエラー出力がログに書き込まれ(これが私が望むものです)、関数がログファイルではなくユーザービューon_exit(stdout)に出力されます。私のスクリプトには、現在のトラップ機能をログファイルに出力する機能があります。ただ標準出力に送りたいです。 #!/usr/bin/env bash set -e on_exit() { echo "An error occurred" } function main() { trap on_exit EXIT # for looping over set of commands $command &> "$LOGFILE" } main "$@"

Admin

fzfプロジェクトを動的に更新
bash
shell
scripting
fzf

fzfプロジェクトを動的に更新

私はシステムからファイルを検索し、各ファイルに対していくつかの完全性チェックを実行するスクリプトを書いています。検査に合格したらfzfに表示したいです。 fzfでエントリをクリックすると、プログラムでファイルを実行したいと思います。 これまで私は以下を持っています: dir="/path/to/dir" fd . $dir --size +1MB | while read -r line; do file_type=$(file -b "$line") echo "$line" | fzf if [[ "$file_type" == "data" ]]; then echo "$file_type" fi done デフォルトでは、指定されたディレクトリから1MBを超えるファイルを検索します。各ファイルに対して file コマンドを実行し、コマンド出力が「data」を返すことを確認します。その場合は、fzfリストに追加したいと思います。次に、エントリをクリックすると、アプリケーションを使用してフルパスでファイルを実行したいと思います。例: myapp /path/to/file/selected/in/fzf。 これまでの問題は、fzfブロックと私がループのリストを埋めることができないということです。本当にすべてを配列に最初に追加してからfzfにパイプする必要がありますか?理想的には、これは並列に発生する必要があります。つまり、検索が完了するのを待たずに検索中に動的に新しいアイテムを追加したいと思います。 また、後で選択したファイルを実行する方法もわかりません。誰かが私を助けることができますか?

Admin

シーケンス出力
linux
shell-script
scripting

シーケンス出力

#!/bin/ksh for i in `seq 1 10` ; do n=`expr $RANDOM`; ( for (( k=1; k<=10; k++ )) do echo -n "$k" done ) echo "$k, $n" done このスクリプトを作成しましたが、正確な結果は出ません。 12345678910, 17517 12345678910, 3695 12345678910, 8841 12345678910, 11553 12345678910, 2019 12345678910, 3503 12345678910, 25789 12345678910, 24825 12345678910, 8039 12345678910, 30532 1-10の乱数を並べるべきですが、

Admin

パターンに基づく検索後の数と行の印刷
text-processing
awk
sed
scripting
uniq

パターンに基づく検索後の数と行の印刷

複数のログファイルにこのような行があります。 ファイル1: Line 203:Caused by :arithmatic overflow exception Line 204:at com.abc.java ファイル2: Line 105:Caused by : ???String out of bound exception Line 206 :at com.def.java 上記のパターンを含むファイルがたくさんあります。これらすべてのファイルで203行と204行の組み合わせの発生回数を計算する方法

Admin