並び順

ブックマーク数

期間指定

  • から
  • まで

721 - 760 件 / 783件

新着順 人気順

shの検索結果721 - 760 件 / 783件

  • [シェル] 画面とログファイルの両方に出力

    bash で以下のようにすると、標準出力と標準エラー出力を画面とログファイルの両方に出力します。 #!/bin/bash #--------------------------------------------------------# # 標準出力と標準エラーを画面とログファイルへ出力する設定 # #--------------------------------------------------------# LOG=/tmp/debug.log exec > >(tee ${LOG}) 2>&1 #--------------------------------------------------------# echo "** `date '+%Y-%m-%d %H:%M:%S'` - START" # 正常 uptime # エラーを起こしてみる unknown_cmd ec

    • bashのパス名展開を抑止する – guro_chanの手帳

      見栄えを考慮して*(アスタリスク)でお洒落に飾り付けたメッセージをechoした際に、予期せぬ結果となりたいへん困惑したものである。 $ ls avava $ msg="* THIS IS TEST MESSAGE. *" $ echo ${msg} avava THIS IS TEST MESSAGE. avava どうも * がワイルドカードとして扱われてパス名展開されていけない。此れを抑制するには変数をダブルクォーテーションで囲い込んでやればよかった。 $ echo "${msg}" * THIS IS TEST MESSAGE. * なおbashのマニュアルによればset -fやset -o noglobコマンドによってもパス名展開を抑止できる模様である。 $ man bash (snip) set [--abefhkmnptuvxBCEHPT] [-o option-name] [

      • shtris | アプリケーション例

        純粋なshell環境で動作するテトリス ゲーム です. 2009年度版のテトリスのガイドラインにそって製作しました. URL: Tetris Guideline. Tetris Wiki. accessed at 2020-05-23 単純そうで奥の深いTetris の仕組み や, ShellScript でここまでできる可能性を知ってもらえると幸いです. 実装したシステムHold QueueNext QueueRandom Generation with Bag SystemScore SystemVariable Goal SystemT-Spin / Mini T-SpinBack-to-Back BonusExtended Placement / Infinite Placement / Classic Lock DownSuper / Classic Rotation Syste

          shtris | アプリケーション例
        • ヒストリ機能での文字列置き換えについて – Linux Training X

          ヒストリの共有 zsh では以下の設定を .zshrc に追加することで複数の端末の間でヒストリの共有を行えます。 setopt share_history bash でも .bashrc に以下の設定を追加することで利用できるようです。 # こちらのサイトより引用いたしました。 # http://iandeth.dyndns.org/mt/ian/archives/000651.html function share_history { history -a history -c history -r } PROMPT_COMMAND='share_history' shopt -u histappend export HISTSIZE=9999 イベント指示子 イベント指示子 ( ! , !- , !! , ^ , etc…) を用いてヒストリ機能を使う事もできます。 使用例bash

          • 【Cygwin】標準出力を含んだ作業ログを自動で残す - (O+P)ut

            はじめに Cygwinで作業をすることが多いのですが scriptコマンドを使えば、標準出力である画面のログをテキスト形式で残せます。 本記事ではその作業ログの取得を逐次実施せずに自動で行えるようにした際のメモです。 scriptコマンドの説明 scriptコマンドの使い方は、ターミナルで script と打てば利用できます。。 標準出力は以下のようになります。 $ script スクリプトを開始しました。ファイルは typescript です ここから記録が ./typescript に始まり、終了する際は exit と打てば終了します。 $ exit exit スクリプトを終了しました。ファイルは typescript です オプションや引数をつけることで、ファイルを上書きしたりファイル名を指定もできます。 自動化する際のポイント 問題はこれを起動時に自動で実行しようとする際です。 単

              【Cygwin】標準出力を含んだ作業ログを自動で残す - (O+P)ut
            • sudoコマンドでaliasを使えるようにする - Qiita

              目的 Linuxでroot権限でコマンドを実行したいとき、わざわざrootユーザに変更するのではなく、sudoコマンドを使用することが多いと思います。しかし、通常のsudoコマンドでは、あとに続くコマンドがaliasかどうかチェックされないので、設定したaliasは使用できません。なので、sudoコマンドでもaliasを使用できるようにする設定をご紹介します。 方法 sudoをsudo+半角スペースのaliasとして設定します。 そのために、自身がaliasを設定しているファイルにalias sudo='sudo 'を追加してください。または、コマンドライン上で実行してください。 このように設定することで、sudoコマンドでもaliasが使用できるようになります。 仕組み sudoのあとに半角スペースを入れることによって何が起こるかといいますと、bashのマニュアルには以下のように説明され

                sudoコマンドでaliasを使えるようにする - Qiita
              • 【Shellスクリプト】文字列置換「bash」「sed」について!

                業務中にメモ帳やエクセルで特定の言葉や名称だけを変更したいときに「置き換え」機能を使ったことありませんか? 普段何気なく使っている便利な機能を、シェルスクリプトではどうやっているのかスクリプトを見ていきましょう。 置換する方法 シェルスクリプトの置換方法は「bash置換」と「sed置換」があります。 そして、文字列に対して置換を行う場合は、検索パターンと置換後の文字列を指定する必要があります。bash置換では、検索して見つかったパターンのうち最初だけ置換する方法と、見つかったパターン全てを置換する方法とがあります。sed置換は変数内の文字列を置き換えたい場合に使用します。 bash置換の書式 変数に対して、削除するパターンを指定します。前方・後方からの検索があり、最短マッチと最長マッチで動作が変わります。また、bash内で変数内の文字列を置換したり、変数に代入されたファイルパスからファイル

                  【Shellスクリプト】文字列置換「bash」「sed」について!
                • sourceコマンドは複数のスクリプトを読み込めない - ハイパーマッスルエンジニア

                  結論 先に結論だけ言っておくとsource file1 file2はできない。file1, file2をsourceしたいなら下記のようにする。 find ~/local_scripts |while read script; do source $script done # もしくはfor文でもいい for script $(find ~/local_scripts); do source $script done いずれにせよsourceコマンドは1つずつ実行する必要がある。 sourceコマンドの第二引数以降はスクリプトの引数($1や$2)としてみなされてしまうからだ。 sourceコマンドのmanにもそう書いてある。というかsourceはただのコマンド実行だからそりゃそうだよねっていう。 source filename [arguments] ここからポエム .zshrcには載せた

                    sourceコマンドは複数のスクリプトを読み込めない - ハイパーマッスルエンジニア
                  • 【bash】Alt+数字を押すと(arg: 数字) と表示されるのは何? at softelメモ

                    問題 bashで Alt+数字を押すと、以下のような状態になるのですが、これは何ですか? [root@dev ~]# (arg: 3) 答え Readline Arguments です。 readline に、数字を渡すと、繰り返し回数として機能したり、マイナスを渡すと逆向きに動作したりします。 例) Alt+3 → a で aaa と入力される。 Alt+100 → BackSpace で一気に100文字削除 Alt+-→ BackSpace でいつもと反対方向の行末削除 Ctrl+k でカーソル位置から行末へ削除 Alt+-→ Ctrl+k でカーソル位置から行頭へ削除

                      【bash】Alt+数字を押すと(arg: 数字) と表示されるのは何? at softelメモ
                    • ディレクトリ内の最新のファイルをfindコマンドで探す - @peccul is peccu

                      tl;dr find -printf '%Ts %TF %TT %p\n' | sort カレントディレクトリ以下のファイル一覧が以下のようなフォーマットで並ぶ 1618914659 2021-04-20 10:30:59.9416574000 ./path/to/file 1618995234 2021-04-21 08:53:54.0000000000 ./path/to/file2 ちょっと説明 %pがファイルパス。 %Tk がファイル変更日時を出力フォーマット指定で、k部分に各フォーマットを指定する。 TのかわりにAが最終アクセス、Cがステータス変更日時(?) find(1) - Linux manual page より引用 @ seconds since Jan. 1, 1970, 00:00 GMT, with fractional part. Time fields: H h

                        ディレクトリ内の最新のファイルをfindコマンドで探す - @peccul is peccu
                      • bashで小数点を比較する方法

                        bashで小数点を比較する方法を紹介します。 1.問題点 小数点を比較したいのですが、下記の構文では期待する結果になりません。 #!/bin/bash A=0.1 B=0.2 if [ $A -gt $B ]; then echo "A > B" else echo "A <= B" fi 実行結果 ./test.sh ./test.sh: line 6: [: 0.1: 指数の表現を期待 A <= B ということで、bashで小数点を比較する方法を紹介します。 2.bashで小数点を比較する bashで小数点を比較するには、echoとbcコマンドを組み合わせます。 #!/bin/bash A=0.1 B=0.2 if [ `echo "$A > $B" | bc` == 1 ]; then echo "A > B" else echo "A <= B" fi 実行結果 ./test.sh

                          bashで小数点を比較する方法
                        • Windows での Node.js バージョン管理を fnm で

                          fnm を Windows で導入した この記事は Windows で VSCode で Git bash を使っている著者が fnm による Node.js バージョン管理を整備したというものです。 Git Bash で使うために、公式にない操作が必要だったので情報公開であり個人メモです。 Windows には nvm がない nvm-windows は操作ちがうじゃん… WSL2 起動して、VSCode でリモートしろ、という正論が聞こえる。 だが、ちょっと趣味でコード書くときとか、環境を作ったり保守するだけで満足して開発に踏み出せなくなる怠惰な人間がここにいるんですよ… バージョン管理ツールどれ選ぶ? この論議はたくさん転がっているので、割愛します。 結論として、fnm を選択しました。 選んだ理由としては次のようなものです。 Windows / Mac / Linux で利用可能

                            Windows での Node.js バージョン管理を fnm で
                          • シェル芸の可読性を向上させるマルチライナー記法のススメ - Qiita

                            マルチライナー記法とは? マルチライナー記法とは、その名の通りシェル芸をワンライナーではなくマルチライナー(複数行)で書くことです。長すぎる行をワンライナーで書くと以下のように横スクロールが必要になって非常に読みにくくなります。(コードは Convert long single line command to a bash shell script より借用。長いコードとして利用しているだけで中身に意味はありません)。マルチライナー記法はこのようなワンライナーを読みやすく書くことです。 nice --20 iperf3 -c somelocation.com -f k | while IFS= read -r line; do echo "$(date) $line"; done | tee onespeed.txt | tee -a speeds.txt; sleep 30 ;cat o

                              シェル芸の可読性を向上させるマルチライナー記法のススメ - Qiita
                            • LinuxでTab補完ができない方へ!bash-completionをインストールしよう!|インフラエンジニアになりたくて。

                              こんにちは、インフラエンジニアのryuです。 今回は、LinuxでTab補完ができない人向けに対処方法を解説します。対処方法は、bash-completionをインストールして、Linux起動時に補完機能を読み込むようにします。Tab補完ができなくて困っている方必見です。

                                LinuxでTab補完ができない方へ!bash-completionをインストールしよう!|インフラエンジニアになりたくて。
                              • bashでjqを使ってJSONの配列をループさせる - 揮発性のメモ2

                                jsonの配列をシェルスクリプトとjqでループさせて取得する [ { "ip" : "192.168.10.105", "name" : "玄関" }, { "ip" : "192.168.10.102", "name" : "居間" }, { "ip" : "192.168.10.101", "name" : "トイレ" }, { "ip" : "192.168.10.100", "name" : "寝室" } ] こんな感じのJSONの配列をループして処理する cat hoge.json |jq -c .[] |while read JSON; do IP=$(echo $JSON |jq -r .ip) NAME=$(echo $JSON |jq -r .name) echo $IP は $NAME です done $ ./hoge.sh 192.168.10.105 は 玄関 です

                                  bashでjqを使ってJSONの配列をループさせる - 揮発性のメモ2
                                • macOSのBashを新しくする - ytooyamaのブログ

                                  この通り、macOSのBashはバージョン3.2.57です。 $ /bin/bash --version GNU bash, version 3.2.57(1)-release (arm64-apple-darwin23) Copyright (C) 2007 Free Software Foundation, Inc. ここにアクセスすると、バージョン4や5がリリースされていることがわかります。 ftp.gnu.org macOSのBashが古いままな背景 macOSのBashが更新されない理由は、Bashのv4以降、GPLv3ライセンスに切り替わったためです。macOSにGPLv3ライセンスのソフトウェアをバンドルするのを嫌って、一部のソフトウェアは廃止されたり置き換えられました。 macOSのシェルについてはデフォルト設定はZSHが使われるようになりました。私も普通に使っていたのです

                                    macOSのBashを新しくする - ytooyamaのブログ
                                  • bashのreadは入力データのバイト数だけシステムコールを実行している、の確認 - Qiita

                                    % wc data.txt 10000 10000 210000 data.txt % head data.txt uRkbV6,i2GQ9N,uYd8dP WqxpAE,QR20EU,ldwZKK cpEEO0,Ac2RgT,EhIU2M ph7r8l,udlcEM,kVCkHP njvAFy,fHWIsj,eA5lOn i5Dd9E,U2aeHD,7y7x6T rZZGSI,BB8Kvy,UQSOR1 2TMU0i,ENjgK5,k1893E i5I6pv,k1ootn,B0UxWk we3zXI,fk8p35,GdZt3d % cat bash.sh #!/bin/bash total=0 while IFS=, read -r x target x; do target="${target//[!aeiou]/}" let "total += ${#target}" done ec

                                      bashのreadは入力データのバイト数だけシステムコールを実行している、の確認 - Qiita
                                    • BashとPSQLを使う時の注意事項 - くらしのマーケット開発ブログ

                                      こんにちは!エンジニアのカーキです。 今日はBashとPSQLを使ってSQLを実行した時にハマったエピソードについて紹介したいと思います。 なにでハマったのか? 自分が書いたBashのスクリプトでpsqlを使っていくつかの簡単なSQL (主にINSERT, UPDATE, DELETE)を実行しようとした時にスクリプトが成功してもデータベースには期待していた変更がありませんでした。 実行していたSQLは今まで成功していたSQLだったので正しいと思い込んでスクリプトの動作だけで確認してたのですが、実はpermission 関係でSQLが失敗していたようです。ただ、Bashスクリプトのエラー時の設定とpsqlの実行方法によってSQL上のエラーに気付かず、スクリプトが最後まで走って、成功したように見えたいただけでした。 エラーに気付かなかった要因とその解決方法 要因 1. Bashはデフォルトで

                                        BashとPSQLを使う時の注意事項 - くらしのマーケット開発ブログ
                                      • findとxargsでsleepしながらファイル移動する - Qiita

                                        大量のファイルを扱う際に、サーバー負荷を減らすためにsleepでウェイトしながら移動させたい時なんかに。 find ./src/*.zip -print -exec sleep 0.5 \; | xargs -n1 -I%% mv -v %% ./dest/

                                          findとxargsでsleepしながらファイル移動する - Qiita
                                        • Finderで開いてるディレクトリへcdするコマンド - Qiita

                                          cdf() { target=`osascript -e 'tell application "Finder" to if (count of Finder windows) > 0 then get POSIX path of (target of front Finder window as text)'` if [ "$target" != "" ]; then cd "$target"; pwd else echo 'No Finder window found' >&2 fi } alias f='open .'

                                            Finderで開いてるディレクトリへcdするコマンド - Qiita
                                          • 脆弱性対応情報データベース (MyJVN API) の API を使って OSS の脆弱性を見てみる - フォトシンス エンジニアブログ

                                            この記事は Akerun Advent Calendar 2020 - Qiita の 11 日目の記事です。 今週 2 回目の登場です。 AkiAbe - Qiita です。 前回は、スプリント開発の話でマネジメント寄りの話でした。 akerun.hateblo.jp 今回は、少しテック寄りにしようと思います。 OSS の脆弱性の情報確認 API を利用して、まとめて調べたい スクリプト化 まとめ OSS の脆弱性の情報確認 この記事読むようなかたは、Open Source Software (OSS) については把握していますね。 意識の高いエンジニアのみなさんとしては、自分が使っている開発環境の OSS の脆弱性がどんなものあるか把握しておきたいですよね。 OSS の脆弱性はデータベース化されています。 jvndb.jvn.jp たとえば、debian 系 OS で、sudo コマン

                                              脆弱性対応情報データベース (MyJVN API) の API を使って OSS の脆弱性を見てみる - フォトシンス エンジニアブログ
                                            • 『bash のbreak、continue、return、exit』

                                              bash のbreak、continue、return、exit | Cyber Thunderのブログ ■break、continue、return、exit せ> type break break is a shell builtin せ> type continue continue is a shell builtin せ> type return return is a shell builtin ■bashにgotoやjumpのようなコマンドはない せ> type goto -bash: type: goto: not found せ> type jump -bash: type: jump: not found ■continue文はfor、while、またはuntilループで次の繰り返しに飛ぶコマンド。 ・ifブロックやcaseブロックから途中で抜けるコマンドはない。 ・ラ

                                                『bash のbreak、continue、return、exit』
                                              • Zenn

                                                404ページが見つかりませんでした

                                                • 毎日ランダムな時刻にメールを送るシェルスクリプト - Walking Trashbox

                                                  試験を控えた友人から、「”試験まであと○日"っていうメールを毎晩送って!」という依頼を受けた。それも、毎日同じ時間だとドキッとしないので「21時から22時の間のランダムな時刻の間に」メールを受信するのが望ましいらしい。これを実現するため、私は下記のような動作を自動で行うシェルスクリプトを書くことにした。常時稼働しているサーバーを持っていればスリープ解除云々は必要ないのだが、残念ながら私は1日の大半の時間スリープしているラップトップしか持ち合わせていないのである。 21時から22時の間にMac(OS Sierra)をスリープ解除する 1の1分後に文章を自動生成しファイルに保存、postfixを使用してgmailのsmtpサーバーに繋ぎメールを送信する 乱数を発生させ、次の日上記の動作を行う時間を決める 翌日の21:XX分に1が行われるように設定する 4の1分後に2が行われるように設定する M

                                                    毎日ランダムな時刻にメールを送るシェルスクリプト - Walking Trashbox
                                                  • BashとDashでechoのエスケープシーケンスに対する挙動が異なるのは何故?

                                                    前提 Ubuntu で、Bash と Dash ではシェル組み込みの echo コマンドの挙動が異なります。特に Bash の echo は -e オプションが無いとエスケープシーケンスを解釈しませんが、Dash の echo はデフォルトでエスケープシーケンスを解釈します。この挙動は Bash を --posix モードで起動しても変わりません。 $ bash --posix -c "echo 'a\nb'" a\nb $ dash -c "echo 'a\nb'" a b 質問 なぜ Bash の echo は POSIX に反して デフォルトではエスケープシーケンスを解釈しないのでしょうか? あるいは、なぜ POSIX の Dash の echo はエスケープシーケンスを解釈するのでしょうか。どういう意図があってそのようなデフォルト動作にしているのか知りたいです。 ※歴史的にどちらの

                                                      BashとDashでechoのエスケープシーケンスに対する挙動が異なるのは何故?
                                                    • cat,tac,revコマンドの使い方 - おれさまラボ

                                                      シェルスクリプトを書いてみる catコマンドとは cat(キャット、カット)コマンドは、ファイルまたは標準入力の内容を連結して標準出力に出力するコマンドのこと。catは連結を意味する"catenate"の略。 tacコマンドとは tac(タック)コマンドは、行を逆順に出力するコマンド。catをひっくり返してtac、覚えやすいです。 revコマンドとは rev(レヴ)コマンドは、行内をひっくり返して出力するコマンド。 基本的な使い方 catの後にファイル名をつけて使います。 cat [ファイル1] ([ファイル2] [ファイル3] ...) 例えば、basho.txtファイルの中身を表示したい場合は以下のように記述。 $ cat basho.txt 古池や 蛙飛び込む 水の音 例えば、basho.txtとshiki.txtを連結して標準出力したければ以下のように記述。 $ cat basho

                                                        cat,tac,revコマンドの使い方 - おれさまラボ
                                                      • 初歩のシェルスクリプトで遊ぶ[ぬかみそフォントの制作サポート(18)] - HatenaDiary id:Narr

                                                        漢字をつくる優先順位の一案 個人の趣味で日本語フォントを作るときの、漢字制作の目安を一覧にしました。優先順位っすね。一案の一覧。いや一覧の一案か。あれどっちだ。いいやどうでも。 あくまで大雑把な目安です。必要な漢字がはっきり分かってるなら、それが最優先。 学習漢字、常用漢字、人名漢字、JIS第一水準、第二水準、IBM拡張、そして日本コア漢字 https://www.itscj.ipsj.or.jp/hasshin_joho/hj_shiko_hyojun/hj_sh_list_07/ 学年別漢字配当表 - Wikipedia カテゴリ:漢字 - ウィクショナリー日本語版 日本コア漢字、というのがありまして、メジャーじゃないのかな。Wikipediaにも項目が見当たらないし、世間の評価とか私も何も知らんのですが。これ、文字数がちょうどよいのです。 現在の常用漢字2136文字を、いま私が(自作

                                                          初歩のシェルスクリプトで遊ぶ[ぬかみそフォントの制作サポート(18)] - HatenaDiary id:Narr
                                                        • Bashで簡単にCSVファイルを読み込んで処理する方法 - Qiita

                                                          はじめに LinuxのBashのスクリプトでシンプルなCSVファイルを読み込んで処理を行う際に、意外と簡単に記述する事ができるので紹介します。 ・cutコマンドを使用する方法 よく見かけるBashスクリプトでCSVファイルを読み込んで処理を行う方法として、CSVファイルを標準入力から一行ずつ読み込み、cutコマンドを使用してカラムを変数に格納する記述があります。 #!/bin/bash while read line do # $lineに読み込んだCSVファイルの一行のテキストが格納され、それをcutコマンドでカラムに分割し変数に格納 col1=$(echo ${line} | cut -d , -f 1) col2=$(echo ${line} | cut -d , -f 2) col3=$(echo ${line} | cut -d , -f 3) # 処理内容をここに記載 # $c

                                                            Bashで簡単にCSVファイルを読み込んで処理する方法 - Qiita
                                                          • 【シェルスクリプト】flockコマンドで排他制御する方法|Linux | なしブロ

                                                            #!/bin/bash LOCKFILE=/home/ubuntu/test/flock.lock exec {fd}> "${LOCKFILE}" # ファイルディスクリプタ作成 { flock -x ${fd} { # 排他したい処理をここに書く echo "排他制御中..." } flock -u ${fd} } echo "排他制御 終了" 例として、ファイルディスクリプタの番号を記述するテキストファイルを”/home/ubuntu/test/flock.lock”としています。 ファイルディスクリプタは exec コマンドを使用して、空いている番号を動的に採番させています。 exec {変数}> "${ファイル名}"flockコマンドについては「help」を参照してみると下のようになっています。 この記事で使用しているのは赤字オプションのみです。 3つ使い方がありますが、1番下の

                                                              【シェルスクリプト】flockコマンドで排他制御する方法|Linux | なしブロ
                                                            • Bash の構文: 関数のデフォルト引数を定義する | まくまくLinux/Shellノート

                                                              以下の関数では、パラメータを何も指定しないで呼び出すと、par1 ローカル変数に ABC が入ります。 パラメータを指定すると、そちらが使用されます。 param-test.sh

                                                                Bash の構文: 関数のデフォルト引数を定義する | まくまくLinux/Shellノート
                                                              • ls よりも exa を使おう!モダンな Linux コマンド達を紹介 - Qiita

                                                                上記の画像を見ると分かる通り、カラフルで見やすいですね。右図のようにディレクトリのツリー表示にも対応しています。さらに --icons オプションを付けると、ファイルタイプに応じたアイコン表示も可能です。 bat 続いて cat コマンドの代替である bat の紹介です。 ファイルの拡張子に応じてソースコードを色付けして表示してくれます。また less のようなページャの機能も持っており、行数の長いファイルを渡すと自動でページャモードで開いてくれます。 hexyl hexyl はバイナリダンプコマンド od の代替コマンドです。bat の開発者と同じ方が開発しています。

                                                                  ls よりも exa を使おう!モダンな Linux コマンド達を紹介 - Qiita
                                                                • シェルスクリプト[[]]のススメ - DENET 技術ブログ

                                                                  こんにちは。 最近シェル芸かっこいいなと思い立ちシェルスクリプトの勉強をしています。 下地です。 今日はシェルスクリプトの小技を紹介しようと思います。 宜しくお願いします。 if文お供 [と[[ シェルスクリプトを書くときに良くお世話になるのがif文です。 ifは条件分岐を行う制御構造ですが、一緒に使われるのが[です。 私も最初勘違いしていたのですが、これは条件式ではなくてコマンドです。 別名testコマンドと呼ばれています。 #!/bin/bash string=aaa if [ "$string" = aaa ]; then echo OK fi という感じで使われます。 このように条件を判断する[コマンドですが、似たような構文として[[という書き方があります。 これは[とは違い、コマンドではなく構文です。 [を使うときよりシンプルにかける場面が多です。 ではどのような時にメリットがあ

                                                                  • 「Sound Horizon」のメジャーリリースされた作品の中であなたが一番好きな楽曲はなに?【人気投票実施中】(要約) | 音楽 ねとらぼ調査隊

                                                                    2001年から活動を開始した「Sound Horizon」。“現代の吟遊詩人”とも呼ばれるRevoさんを中心とするクリエイター集団で、物語音楽というジャンルを開拓したパイオニアです。楽曲のコンセプトに合わせてボーカリストや演者などの編成を変え、音楽によって壮大な物語をつづります。聴けば聴くほどに深みが出てくる楽曲の…

                                                                      「Sound Horizon」のメジャーリリースされた作品の中であなたが一番好きな楽曲はなに?【人気投票実施中】(要約) | 音楽 ねとらぼ調査隊
                                                                    • シェルスクリプトで安全簡単な二重起動防止・排他/共有ロックの徹底解説 - Qiita

                                                                      はじめに シェルスクリプトで二重起動防止やロックをする方法を検索すると、いろいろな方法や書き方が見つかりますが、どれを使えばよいのか、本当に正しく動くのか、不安になりますよね? ディレクトリ (mkdir) やシンボリックリンク (ln) を使った独自実装の例も見かけますが、エラー発生時や予期せぬ電源断、CTRL+C で止めたときなどでも問題は発生しないのでしょうか? まず、ディレクトリやシンボリックリンクを使った独自実装はしない。これを肝に銘じてください。シェルスクリプトでのロック管理はとても難しく、一般的な排他制御の知識に加えて、シェルスクリプト特有の問題、シグナルやトラップ、サブシェルや子プロセスの問題、さらには特定のシェル固有の仕様やバグなどさまざまな問題に対処する必要があり大変です。独自実装の例では古いロックファイルが残ってしまい、それをいつどのタイミングで片付ければ安全なのか?

                                                                        シェルスクリプトで安全簡単な二重起動防止・排他/共有ロックの徹底解説 - Qiita
                                                                      • 標準出力と標準エラー出力を同時にパイプに送る時のTips - 理系学生日記

                                                                        標準エラー出力と標準出力を同時にパイプに送るとき、2>&1 | と記述することが多いでしょう。 $ ls /etc/hosts /notexist 2>&1 | cat > ls.dat $ cat -n ls.dat 1 ls: cannot access '/notexist': No such file or directory 2 /etc/hosts Bash Reference Manualを読んでいると、この2>&1 |を|&という短縮記法で書けるということに気付きました。 $ ls /etc/hosts /notexist |& cat > ls2.dat $ cat -n ls2.dat 1 ls: cannot access '/notexist': No such file or directory 2 /etc/hosts (読みにくいので)あまり使うことはなさそう

                                                                          標準出力と標準エラー出力を同時にパイプに送る時のTips - 理系学生日記
                                                                        • 【Linux】シェルスクリプト(bash)入門 - stmtkの技術ブログ

                                                                          シェルスクリプト入門 シェルスクリプト例題 bash_profile/bashrcの使い分け シェルスクリプト入門 シェルスクリプトを書くためにはvi(vim)の使い方を知る必要があります。 eng-entrance.com シェルスクリプトの作成方法と実行方法です。 shellscript.sunone.me シェルスクリプトの基本的な書き方です。 qiita.com www.tohoho-web.com シェルスクリプト例題 qiita.com g-network.boo.jp bash_profile/bashrcの使い分け bash_profileに環境変数をそれ以外はbashrcに定義するのが一般的だそうです。 blog1.mammb.com

                                                                            【Linux】シェルスクリプト(bash)入門 - stmtkの技術ブログ
                                                                          • if 文で [ "x$var" = "x" ] とする理由は?

                                                                            シェルスクリプトをみていると、 if [ "x$var" = "x" ]; then : ... fi のような記述をしばしば見かけます。 [ -z "$var" ] や [ "$var" = "" ] ならばまだわかりますが、 x をわざわざはさむ理由は何ですか?

                                                                              if 文で [ "x$var" = "x" ] とする理由は?
                                                                            • ターミナル(コマンド) - Qiita

                                                                              最初に 自身で学習してきた内容を書き出していきます。 基本的には自分自身でわかるような内容になりますので、ご容赦ください。 また、誤っている点がありましたら、コメントにてご指摘ください。 (要確認)マークがあるものは、「実行前に必ずググる」べき内容。 index 前提知識 [初級]ターミナルコマンド一覧と付随するオプションなど 前提知識 ディレクトリ : フォルダ カレントディレクトリ : 現在いるディレクトリ ホームディレクトリ : ターミナルを起動したときのデフォルトディレクトリ またターミナルコマンドにオプションをつけることで表示内容を変更することができる。 ls コマンドオプションの一例 「-d」 + 「-l」オプションと組み合わせ $ ls -ld xxx # ディレクトリ内の情報ではなく、ディレクトリの情報を表示 $ # 結果 $ drwx------+ 15 Macuser

                                                                                ターミナル(コマンド) - Qiita
                                                                              • 【シェルスクリプト】フォルダの中身を順に処理|インフラエンジニア tamolab

                                                                                こんにちは〜インフラエンジニアのtamolabです! 今日はシャルスクリプトについて書こうと思います!私はよく業務でデータ処理やログ解析でシェルスクリプトを利用します!そのデータ処理の際によく利用する処理を書きたいと思います。Excelだと簡単に処理できる内容ではありますが、Excelで処理するには時間がかかりすぎますし、大きいファイルだとExcelで開くことができません。(行数や列数に制限があります)私は過去に10億行のファイルを処理したときは、迷わずシャルスクリプトを利用してサーバ上で処理を行いました。 1. やりたいこと フォルダ内のデータ(名前)を取得します。本記事ではフォルダ内ファイルの拡張子を.txtから.logに変更するループ文のシェルスクリプトを紹介します。 <実行前> 1.txt 2.txt 3.txt 4.txt 5.txt <実行後> 1.log 2.log 3.lo

                                                                                  【シェルスクリプト】フォルダの中身を順に処理|インフラエンジニア tamolab
                                                                                • シェルスクリプト(Shell Script)の作り方・構文まとめ

                                                                                  シェルスクリプト(shell script)の作り方・構文をまとめました。 随時追加していきます。 スクリプトの最初の 1 行目の「シバン(shebang)」(#!/bin/bash or #!/bin/sh) スクリプトの最初の 1 行目です。 「#!/bin/sh」と「#!/bin/bash」の違いはほぼありません。 あるとすれば以下の違いくらいです。 #!/bin/sh ← POSIX 標準 #!/bin/bash ← POSIX 標準ではない 「/bin/bash は POSIX 標準ではない」と聞くと機能が少ないのではないかと思うかもしれませんが、逆です。 逆に「/bin/sh」は POSIX 標準から外れないように作られているので若干できることが少なくなります。(準拠しなければいけないのでその分制限されます) 通常は「#!/bin/bash」で全く問題ないはずです。 普段の L

                                                                                    シェルスクリプト(Shell Script)の作り方・構文まとめ