コマンドがどこにあるのかを調べる
whichコマンド 概要 man whichすると、 which ユーティリティは、コマンド名のリストを受け取り、それらのコマンドが実際に起動された場合に実行されるであろう各実行ファイルのパスを検索します。と書いてました。 使ってみた lsコマンドの場所を探す場合、以下のようにします。 % which ls /bin/ls brewコマンドを探す場合 % which brew...
View Article個人的に利用しているBashの機能紹介
この記事はMicroAd Advent Calendar 2021の13日目の記事です。 概要 この記事では,Bashで利用できるシェルの機能について,個人的に最低限必要に感じるものについて紹介します. 必要かどうかや,便利かどうかは筆者の主観的ですので,参考までにしていただければ幸いです. コマンド履歴を使いやすくする シェルの実行履歴に関する設定は以下のようなものがあります....
View Articleターミナルの文字の色を変更する
ターミナルの%より左側にある文字列の色を変更する手順を紹介します。 username@Macbook-Pro ~ % 今回の説明は Zsh が設定されている人が対象で、 Bash を使用している人は少しやり方が違いますので注意してください。 macOS の Catalina からデフォルトシェルが Bash から Zsh に変更されました。 なので Catalina 以上、もしくは Bash から...
View Article記事1)LinuxスクリプトでのMySQLクエリ(スクリプト初めての方も)
初めての記事ですが、LinuxでのスクリプトでMySQLデータベースのレコードの削除やファイル削除などについて共有したいと思います。 ◆まずは、Linuxのコマンドを開きます。 Windowsで利用の方は色んなコマンドツールがあると思いますが、私は下記のツールなどを使っています。 -「Linuxサーバ」PuTTY (https://www.putty.org/) -「ロカール環境」Git...
View Article[Linux]ワンライナーマニアによるデバッグTips
はじめに ワンライナーマニアによるワンライナーマニアへのTips共有です。 今となっては当たり前のようにやっていますが、 ワンライナー入門したときはかなり頭を悩ませた課題だったので、投稿してみました。 ※ワンライナーマニアとは? 私が(勝手に)命名しました。 あらゆる場面でLinuxの複雑なスクリプトを1行で完結させようとする人たちを指します。...
View Articlegit tagのsemantic versionを自動でインクリメントしてpushするシェルスクリプト
前提 現在携わっているサービスでGitLab CI/CDを利用してリリース番号がついているtagをpushすると 自動でデプロイされるように設定しています .gitlab-ci-production.yml ... ... ... only: - /^release-.*$/ リリースのたびにtagのsemantic versionをインクリメントするのがめんどくさいので...
View ArticleSAP Integration Suite を bashで触ってみよう
はじめに この記事は SAP Advent Calendar 2021 の12月17日分の記事として執筆しています。 皆様、SAP Integration Suite で遊んでおられますでしょうか。 実行したのは良いけども、Web から 実行結果のステータスを確認するのが面倒くさいとお嘆きの貴方のため 今回は日本全国で1億人を超える方々が大好きな bash を使って、SAP Integration...
View ArticlemacでHomebrewを使ってPHPをインストールする
PHPコマンドのセットアップ MontereryOS以降のmacなどでは、デフォルトではPHPはインストールされない仕様へと変更されました。しかし、phpを使用したフレームワークでの制作などで、phpコマンドを使用するシーンは存在します。そういった場合には、自分でphpコマンドを使用できるようにセットアップする必要があります。...
View Articleシェルスクリプトの罠「whileの中の変数が見えない」の推奨の解決方法5選 〜 パイプ・サブシェル問題
はじめに コマンドの出力をパイプ + while ループで処理した時にループの中の変数がループの外で使えない(変数の中身が空になっている)という問題の解決方法の紹介です。これも何番煎じかのネタだと思いますが、良くない解決方法が目につき、あまり紹介されてないテクニックもあるので、それらの情報をすべてまとめ、何がどういう理由で駄目なのか?良い方法とはなにか?を解説するのがこの記事の趣旨です。推奨 5...
View Article元Linux系開発者がPowerShellはじめて面白かったこと
はじめに この記事はFujitsu Advent Calendar 2021 19日目の記事です。 この記事では、元Linux系開発者で、Bashのシェルスクリプトでツール開発をしていた私が、Windowsで同様なことができるPowerShellを勉強して、面白いと感じたことを書きます。 PowerShellの概要 マイクロソフトが開発したシェル、スクリプト言語 2006年に公開...
View Articlebash で数値計算しようとして罠に
bash で数値計算しようとして罠に bash で数値計算する方法 Bash で数値計算しようとすると NUM=1 RESULT=$(expr $NUM + 1) echo $RESULT これで計算できます。Bashの場合はもっと良い方法として、 NUM=1 RESULT=$(($NUM + 1)) echo $RESULT この書き方もあります。どうやらこっちの方が早いらしいです。 罠...
View Articleシェルスクリプト(Bashスクリプト)でかんたんな自作言語のコンパイラを書いた
Bashがある環境ならどこでも自作言語で書いたプログラムをコンパイルできるようになりました。 できたもの いろいろと雑なのですが、アドベントカレンダーの期日があるのでとりあえず公開します。 サイズはこんな感じ。 $ wc -l {lexer,parser,codegen}.sh lib/*.sh 220 lexer.sh 655 parser.sh 525 codegen.sh 42...
View ArticleiTermで動く年賀状(寅)を作ってみた
こんにちは、@nininiです。 本記事はハンズラボAdvent Calendar 2021 の21日目の記事です。 はじめに クリスマスもまだですが、そろそろ年賀状を作るリミットですね。 自分はまだハガキも買っていませんが... bashのワンライナーで干支の絵でも書いてほしいと社内でリクエストがありました。 macのターミナルで年賀状っぽいものを作ってみました。...
View ArticleWebの勉強はじめてみた その15 ~シェルプログラミングと通信編~
N予備校「プログラミング入門 Webアプリ」を受講しています。 今回は第2章7節~9節の内容になります。 通信 コマンド tcpdump : TCPやUDPで行われる通信のパケット内容を見る curl : 第一引数に指定されたURLにアクセスしコンテンツを取得する ping : ネットワーク疎通を確認したいホストに対して、パケットが届くかどうか、またはその応答時間を調査する 通信方法 回線交換方式...
View Articleフルスタックエンジニアが歓喜するIntelliJの3つの機能
はじめに 今年も第九の季節がやってきましたね!ってことで、今回は大げさなタイトルをつけましたが、内容はなんでも屋さんが喜ぶちょっと便利な機能を紹介していきます。 ショートカットは、Mac用になっていますので、Windowsユーザはこことかで置き換えてください。 ①シェルスクリプトをとてもキレイに書ける...
View Articleわーけーしょん環境をいずの山の中に作ったら・・・
はじめに この記事はシスコの有志による Cisco Systems Japan Advent Calendar 2021 (2枚目)の 25日目の記事です。 2021年版 1枚目: https://qiita.com/advent-calendar/2021/cisco 2021年版 2枚目: https://qiita.com/advent-calendar/2021/cisco2 (これ)...
View Articleターミナルでコマンドの実行が終わったら音を出して知らせる
はじめに 実行するコマンドの処理が長くて、終わったら知らせてくれる方法無いかなと思ったので実験してみました。 sayコマンド sayを使うと指定したテキストを読み上げてくれます。 以下を実行するとテストと読み上げてくれます。 % say 'テスト' 時間がかかるコマンド+sayコマンドで解決出来そう 今回はpod installの処理が終わったら知らせてくれるようにします。 % pod...
View Articleターミナルやプロンプトで、ワンラインでパスワードを適当に作りたい時のこじれ過ぎたTips
2022年になろうとしているのに、 「登録するWebサービスやソフトウェア・あるいはミドルウェアの都合で、パイプラインで標準出力に加工コンボをキメてパスワードを作る」 機会は地味に多い。例えば; $ # 例1:時刻を元ネタに、sha256sumを生成した後にbase64でさらにゴマかし、そこから先頭14文字を抽出して小文字化を行って改行記号を加える。 $ date +%s | sha256sum |...
View Article