タグ

ShellScriptに関するstray346のブックマーク (22)

  • コマンドの usage の書き方 - amutake

    stray346
    stray346 2023/06/21
    usageの書き方。オプション項目。必須項目の書き分け
  • いちいちシェルコマンド思い出せないので、ChatGPTで自然言語からスクリプトを生成するツールつくった - Qiita

    いちいちシェルコマンド思い出せないので、ChatGPTで自然言語からスクリプトを生成するツールつくったPythonOpenAIChatGPTlangchain はじめに ChatGPT APIが出たので早速さわってみました。せっかくなので何か便利なものをということで自分向けに使えそうなツールをつくっていたら 良いかんじに動作したのでご紹介します。 つくったものは、「ChatGPTを用いた自然言語によるシェルコマンドランチャー」です。百聞は一見にしかずと言うことでまずは動作するところをみてください。 概要 wannaコマンドは、ChatGPTを用いた自然言語によるシェルコマンドランチャーです。自然言語によって、bash scriptを生成し、名付けし、管理できます。 コマンドライン上での操作は簡単に多くのことを行うことができるため、非常に便利です。しかし、多くのコマンドやオプションの組み合わ

    いちいちシェルコマンド思い出せないので、ChatGPTで自然言語からスクリプトを生成するツールつくった - Qiita
  • Bash: .bashrcと.bash_profileの違いを今度こそ理解する|TechRacho by BPS株式会社

    こんにちは、hachi8833です。社内Slackで見かけたmorimorihogeさんの以下の書き込みで目から鱗が落ちました。 ~/.bashrcで何かを出力してしまうと、rsyncなどのsshパイプで問題が生じることがあるそうです。 参考: 知らないとrsyncでもハマるシェル初期化 - Qiita これをきっかけに、できるかぎり一次情報を元になるべく一般的になるようにまとめてみました。 シェルスクリプト(.bashrcや.bash_profileなども含む)はあまりに自由に書けてしまい、LinuxディストリビューションやmacOSによって作法がまちまちだったりするので、外してはいけないポイントがどこかを知りたかったのでした。 対象はbashとsh(Bourne Shell)に限定します。また、デスクトップGUIの設定ファイルについては最小限にとどめます。 bashのmanページ 元記

    Bash: .bashrcと.bash_profileの違いを今度こそ理解する|TechRacho by BPS株式会社
  • Not Found

  • シェルスクリプトを高級言語のような書き味に近づける Tips 集 | 創作メモ帳

    Bash は言わずと知れた歴史あるコマンド言語です。テキストにコマンドの羅列を記述するだけで、手軽にシェルスクリプトとして実行することができます。 シェルスクリプトの実体はシェルコマンドの羅列に過ぎませんが、手続き型プログラミング言語にあるような制御構文も備えています。変数や条件分岐、ループ、関数などです。これらを使えばシェルスクリプトでプログラミングも可能です。 もちろん、現代の一般的なプログラミング言語と比べると機能は限られます。他の言語には見られないシェルスクリプト特有の癖や記法も数多くあり、最近の言語に慣れている人ほど、つまずくポイントが多いです。 しかし、シェルスクリプトだからこその良さもあります。Bash は現在でも多くの OS で標準シェルとして採用されており、普段使っているシェルコマンドを書くだけで動かせる手軽さは何者にも代えがたいです。一度身につけておくと長く使えるお得な

    シェルスクリプトを高級言語のような書き味に近づける Tips 集 | 創作メモ帳
  • Vimで変態テキスト処理!シェルコマンドを使い倒す | DevelopersIO

    Vimから外部のシェルコマンドを実行して出力結果を得たり、バッファ内のテキストの変換を行う方法を紹介しています。 はじめに こんにちは、データインテグレーション部の平野です。 私はテキストエディタにVimを使用しています。 Vimは敷居が高いと言われますが、ある程度慣れてくると普通のエディタとは明らかに異なる、Vimらしい編集方法がだんだんと身についてくるものです。 今回はVimから外部のシェルコマンドを実行してテキスト編集する手段についてご紹介します。 なお、Vimには色々なプラグインが公開されておりますが、ここで紹介する方法はあくまでもVimのオリジナル機能ですので、その場ですぐ試すことができます。 (lsコマンド等にはPATHが通っているという前提です) カレントディレクトリのファイル一覧を取得したい Vimでテキストを編集していて、カレントディレクトリのファイル一覧を挿入したい、と

    Vimで変態テキスト処理!シェルコマンドを使い倒す | DevelopersIO
  • bashスクリプティング研修の資料を公開します - エムスリーテックブログ

    こんにちは、エンジニアリングGの中村です。 以前にこのブログにてエムスリーでの社内研修について紹介しました。今回は、この中でのbashスクリプティング講座の資料を公開します。 www.m3tech.blog 弊社の中でもいろいろな用途でbashが使われていますが、bashは簡単に利用できるもののプログラミング言語としてはバグを生みやすい、辛い言語だと思います。 ここで紹介しているのはいわゆるコーディング規則というよりも、バグ防止と可読性向上のためのルールをTips集的にまとめたものです。 bashにおいてまだまだ注意するところはありそうですが、多少なりともわかりにくいスクリプトの削減になればと期待しています。 [追記: 2018-08-22] はてブにて以下のコメントをいただきました。 bashスクリプティング研修の資料を公開します - エムスリーテックブログ bashで50行以上になった

    bashスクリプティング研修の資料を公開します - エムスリーテックブログ
  • コマンドラインツールを作るときに参考にしている資料 | SOTA

    コマンドラインツールについて語るときに僕の語ること - YAPC::Asia Tokyo 2014 コマンドラインツールが好きで昔からつくってきた. 今年のYAPCで,そのコマンドラインツールをつくるときにどういうことを意識して作っているのか?どのような流れで開発しているのか?といったことを語る機会をもらえた. 具体的な内容については,是非トークを聴きに来てもらうとして, スライドをつくるにあったって過去に読んだ資料や,よく参考にしている記事を集め直したので,その一部を参考資料としてまとめておく. UNIXという考え方 UNIXという考え方 Mike GancarzによるUNIXの思想や哲学をまとめた.古いが全然色あせてない. コマンドラインツールの作り方を書いたではないが,これらの思想の上で動くツールはこの思想に準拠して作られるべきだと思う.何度も読んで考え方を染み付かせた. 小さい

  • 雰囲気でシェルを使っている人のためのシェル入門 | κeenのHappy Hacκing Blog

    κeenです。雰囲気でシェルを使ってる人が多いとのことだったので少しばかり込み入った知識を。 あと一応POSIX準拠かどうかも気にしながらやっていきます。 基礎知識編 シェルの種類 まず、POSIXにシェルが定義されています。 これに最低限の機能で準拠しているものをPOSIXシェルと呼ぶことにします。いわゆる/bin/shです。具体的な実装はbsh、ash、dashあたりでしょうか。 最低限の機能以上に色々拡張されているシェルを拡張POSIXシェルと呼ぶことにします。具体的な実装はbash、zsh、kshなどでしょうか。 ここでは触れませんがPOSIX準拠でないシェルも存在してcshやtcshなどのシェルがあります。あと確か最近話題のfishも違ったような。 さて、1つ問題になるのは普段使いのコマンドラインはおおむね拡張POSIXシェルでしょうが、サーバで使うシェルやデプロイスクリプトで呼

    雰囲気でシェルを使っている人のためのシェル入門 | κeenのHappy Hacκing Blog
  • Bashスクリプトのチートシートと便利なスニペットまとめ - オープンソースこねこね

    Bashでスクリプトを書く際によく自分が使っている小技や関数などです。 またBashでは他のプログラミング言語以上に$や:などの記号の使い方が独特でググラビリティが低いので、基文法などもチートシートとしてまとめておきます。 基文法 変数と配列 制御構文 while for-in if - elif - else if文のone-liner 文字列比較 文字列が等しい (=) 文字列が等しくない (!=) 空文字、文字列長が0 (-z) 空文字でない、文字列長が0でない (-n) 数値比較 数値が等しい (-eq) 数値が等しくない (-ne) 数値がより小さい (-lt) 数値がより大きい (-gt) ファイルの判定 存在する (-e) ファイルである (-f) ディレクトリである (-d) シンボリックリンクである (-L) 関数 便利なスニペット 実行スクリプトがあるディレクトリを

    Bashスクリプトのチートシートと便利なスニペットまとめ - オープンソースこねこね
  • bashで変数から部分文字列を取得する - Qiita

    bashで変数から部分文字列を取得する方法まとめ パラメータ展開を利用して部分文字列を取得する オフセットと長さを指定して文字列を取得する #!/bin/bash HOGE="abcdef" # オフセット位置から長さ分を取得 echo ${HOGE:0:2} # -> ab echo ${HOGE:2:2} # -> cd echo ${HOGE:4:2} # -> ef # 長さを省略した場合はオフセットから最後まで出力 echo ${HOGE:2} # -> cdef # 長さにマイナスを指定した場合は最後からマイナス分引いた位置までの長さになる echo ${HOGE:0:-2} # -> abcd # オフセットの位置にマイナスを指定した場合は文法として別のパラメータ展開になる(デフォルト値の指定) # 指定した変数が空文字列の場合は右に指定した文字が入る echo ${HOGE

    bashで変数から部分文字列を取得する - Qiita
  • Googleの肩に乗ってShellコーディングしちゃおう - Qiita

    はじめに GoogleさんがShellスタイルガイドを共有していたので、いくつか気になった点をピックアップしました。 自分のShellスタイルはかなり我流なので、自省の意味も込めてコメントも併記します。 Googleスタイルガイドの元ネタ (Python/C++/Java/Rとかだけでなくdocumentガイドなど色々あります) https://github.com/google/styleguide Shellスタイルガイド (今回はこちら) http://google.github.io/styleguide/shell.xml 当は人間がチェックするのではなくcpplintのためXML定義なのかもですが、気にしない気にしない。 (見たところcpplintc++だけだと思ってます) commitフックでshell系のlint走らせろっていうのが今風なのかもしれませんが、キニシナイキ

    Googleの肩に乗ってShellコーディングしちゃおう - Qiita
  • 【Linux】サイズの大きいファイルはお前だ!消してやる! - Dance with Tech

    タイトルの通り、 ストレージ内で容量の大きいファイルを見つけて削除する、Linuxコマンドをまとめました。 環境はAWS(EC2)でCentOS7です。 CentOS7の構築については、 少し前に書いて何故かとても読まれた過去記事を参照してください。 ぶっちゃけ簡単だし、 ググればこの手の類はいくらでも出てくるのですが、 念のため備忘録としてまとめておきます。 メールのキューが溜まっている場合は以下で対応。 あんまり無いと思うけど。 これで今後忘れてもググらずに済むはず。 ログとかのファイル削除に関しては、 定期的に消すシェルなどの仕組みを作るのが1番良いですね。 Linuxコマンドライン入門 1日目 (ネット時代の、これから始めるプログラミング(NextPublishing)) 作者: 大津真 出版社/メーカー: インプレスR&D 発売日: 2014/09/05 メディア: Kindle

    【Linux】サイズの大きいファイルはお前だ!消してやる! - Dance with Tech
  • Android開発を爆速にする10のコマンドラインスクリプト - クックパッド開発者ブログ

    モバイルファースト室の山下( @tomorrowkey )です。 みなさんはAndroidアプリをビルドするときに AndroidStudioの実行ボタンを押すのと、ターミナルでgradleコマンドを実行するのと、どちらを使っていますか。 クックパッド社内のAndroidエンジニアでもどちらを使うか好みが分かれるのですが、私はたいていターミナルでgradleコマンドを使っています。 AndroidStudioの実行ボタンだとビルドを途中で中止できないことがあるからです。コマンドであればcontrol+cでいつでも中止できるという気軽さからコマンドを好んで使用しています。 開発するうえでIDEなどのGUIツールはとても便利なのですが、実はコマンドを実行する方がはるかに早くストレスなく開発を進めることができることがあります。 今回は私が実際に使っている便利なコマンドラインスクリプトを10個紹介

    Android開発を爆速にする10のコマンドラインスクリプト - クックパッド開発者ブログ
  • 意識の低い自動化

    意識を低く保ったまま、定型作業を自動化する話です。 ※どうも言葉足らずで誤解させてしまっているようなので補足を書きました。ご覧ください http://qiita.com/greenspa/items/fff535d2ae5da36e36feRead less

    意識の低い自動化
  • 非同期プロセスをEmacsで扱う

    exec-path という変数がsub-processを立ち上げる場合の検索パスらしい。ので、start-processはexec-passを使って プログラムを探す。start-processはシェルを介さないので、エイリアスは使えない。たとえば、僕の必殺エイリアス(!?) alias e 'env LC_ALL=C XMODIFIERS=@im=none xemacs -geometry 140x90+800+0 &' があっても start-process には理解してもらえない。 (start-process "hoge" "result" "e") ;; ミニバッファに Searching Program ... そんなんありません的メッセージがでる。 逆に start-process-shell-command はエイリアスが利用できる。start-process を star

    stray346
    stray346 2013/01/21
    非同期プロセス
  • ls(ファイルリスト)をとって、シェルをまわしてみる

    <IT技術の処方箋:ls(ファイルリスト)をとって、シェルをまわしてみる> ディレクトリにある特定のファイルの数だけ、 ループをまわしたいということがあります。 サンプルは、以下のとおりです。 #!/bin/bash file=*.txt for TXT in ${file} do echo $TXT done *.txtのファイルの数だけ、ループが回ります。 また、以下のようにすると、?は一文字だけを表すので、 .txtの前が一文字(1.txt、a.txtなど)だけを拾ってループをまわします。 #!/bin/bash file=?.txt for TXT in ${file} do echo $TXT done

    stray346
    stray346 2010/01/18
    ファイルリストに処理
  • Linux

    ▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼ユーザーの追加▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼ ▼グループの追加 groupadd -g グループID グループ名 ▼ユーザーの追加 useradd -g デフォルトグループ名 ユーザー名 ▼パスワードの設定 passwd ユーザー名 who  ログインしているユーザの表示 w  ログインしているユーザの表示 id  IDの表示 vigr  グループファイルの編集 ▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼アーカイブを展開▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼ ▼zip unzip ファイル名 ▼lzh lha e ファイル名 ▼tar tar xvf ファイル名 ▼gz gzip -dc ファイル名 ▼bz2 bzip2 -dc ファイル名 ★tar.gz 組み合わせてパイプをつなぐ(他の組み合わせも同じ) gzip -dc ファイ

    stray346
    stray346 2010/01/18
    コマンド群
  • 掲載スクリプトのダウンロード:ゲームで極める シェルスクリプトスーパーテクニック

    書に掲載したゲーム3種類のほか,文で紹介したテストプログラムも含め,さらに,日語が含まれたシェルスクリプトに漢字コードがEUC-JPのものとUTF-8のものを用意しました。 また,Bourne Shell版とbash版の両方があります。 これらの組み合わせで全17ファイルになっています。 書をお読みになり,ファイル名を見れば,どのファイルがどのプログラムを指すかはおわかりになると思います。17すべてをTAR+gzipでまとめてあります。 shellscript_game.tar.gz

    stray346
    stray346 2009/12/24
    サンプルダウンロード
  • ゲームで極める シェルスクリプトスーパーテクニック - UNIX的なアレ

    シェルスクリプトの基的ななら割と世間に出回っているのですが、「極める」系のがあまり存在していないのが現状です。 実際、そこまでシェルスクリプトを使い倒すならPerlを使うよって言う方が多いからなのかもしれませんが、ここまでできるんだって思わせてくれる良書をみつけたので紹介します。 ゲームで極める シェルスクリプトスーパーテクニック 作者:山森 丈範技術評論社Amazon Contents 目次は以下のとおり。 Chapter1 シェルスクリプトの基 Chapter2 シェルスクリプト環境のカスタマイズ Chapter3 シェルスクリプトによる画面制御の基礎 Chapter4 シェルスクリプトでのリアルタイム入力 Chapter5 シェルスクリプトでの乱数発生方法 Chapter6 シェルスクリプトによるリアルタイム進行 Chapter7 シェルスクリプトでの配列の使い方 Chapt

    ゲームで極める シェルスクリプトスーパーテクニック - UNIX的なアレ