並び順

ブックマーク数

期間指定

  • から
  • まで

241 - 280 件 / 364件

新着順 人気順

Bashの検索結果241 - 280 件 / 364件

  • xargs 完全理解マニュアル - xargs は拡張引数 (extended arguments) の略って知っていますか? - Qiita

    xargs 完全理解マニュアル - xargs は拡張引数 (extended arguments) の略って知っていますか?ShellScriptUNIXシェル芸POSIXUnix哲学 はじめに xargs コマンドは「なにか凄そうだけどよく分からないコマンド」としてよく知られています。使う人は使うけど何をやっているのか全くわからないコマンドです。また、やっていることがわかっても実際に使ってみると、空白やクォーテーション文字でエラーになってしまう使い方がとても難しいコマンドです。この記事はそういうよくわからない xargs はどういうコマンドなのか解説します。この記事を読むと xargs を「完全に理解した」と言えるようになるでしょう。 xargs コマンドが難しい理由は、xargs 自体の設計や実装の問題で古い時代の制限が多いからです。仕様が意味不明で一貫性がなくで他のコマンドと正しく

      xargs 完全理解マニュアル - xargs は拡張引数 (extended arguments) の略って知っていますか? - Qiita
    • VS Code の統合ターミナルで Git Bash や fish もサポートされたので試してみた | DevelopersIO

      VS Code 1.71 がリリースされました? マージエディタの改善や、スティッキースクロールが GA したり (editor.stickyScroll.enabled)、統合ターミナル周りの改善など様々なアップデートがありました。 またプレビュー機能ですが、ファイルの移動や名前を変更したときに、該当ファイルを参照している Markdown のリンクを自動で追随して変更してくれる機能も来ているようで気になっています。 (markdown.experimental.updateLinksOnFileMove.enabled) 今回のアップデートで個人的に一番嬉しかったのは、統合ターミナルで Git Bash も(まだ実験的ですが)サポートされたことです。 統合ターミナルではコマンドの検出や装飾、ナビゲーションなどの便利な機能が使うことができますが、サポートされているのは以下の組み合わせのみ

        VS Code の統合ターミナルで Git Bash や fish もサポートされたので試してみた | DevelopersIO
      • nsh - nsh

        Currently nsh is incomplete and not yet stable. Succeeded in crashing nsh? Let me know! A command-line shell that focuses on productivity and swiftness featuring: A POSIX compliant interactive shell with some Bash extensions. Tab completions and syntax highlighting. A builtin interactive fuzzy completion filter. Builtin zero configration features. Written in Rust :crab: Installation $ cargo instal

        • GitHub - eystsen/pentestlab: Fast and easy script to manage pentesting training apps

          You signed in with another tab or window. Reload to refresh your session. You signed out in another tab or window. Reload to refresh your session. You switched accounts on another tab or window. Reload to refresh your session. Dismiss alert

            GitHub - eystsen/pentestlab: Fast and easy script to manage pentesting training apps
          • bashスクリプトのベストプラクティスを調査した

            はじめに ポートのSREを担当している @taiki.noda です。 弊社で実施しているインフラ勉強会でbashスクリプトについて調査したので、今回はそれを紹介したいと思います。 まずなぜこの内容を調査したのかについて3点 bashでのシェルスクリプトは簡単に利用できるが、バグを生みやすく、可読性の低くなりやすい言語 複雑な処理は他の言語(Go, Python等)を使った方が良いが、現状色々な箇所で使われているので、メンテナンス性の高い書き方等調べたい 弊社で使われているシェルスクリプトの書き方を考慮した上で、社内で使えるテンプレートを作成・コーディング規約的なものを作ろうと思った ファイルの構成 シバンは#!/bin/shではなく#!/bin/bash 特にshを使うというわけではないなら、bashを明示する ファイルの冒頭に用途・使い方を明記

              bashスクリプトのベストプラクティスを調査した
            • 【 shopt 】コマンド(応用編その1)――コマンドライン履歴の扱い方を変更する

              【 shopt 】コマンド(応用編その1)――コマンドライン履歴の扱い方を変更する:Linux基本コマンドTips(362) 本連載は、Linuxのコマンドについて、基本書式からオプション、具体的な実行例までを紹介していきます。今回は、bashのシェルオプションを設定する「shopt」コマンドです。

                【 shopt 】コマンド(応用編その1)――コマンドライン履歴の扱い方を変更する
              • Unix/Linux シェル考古学 ~シェルスクリプトが本物のプログラミング言語である理由~ - Qiita

                はじめに タイトルは「Unix考古学」のパクリですがこの記事と直接の関係はありません。Unix 誕生時点のシェルから POSIX シェルが策定されるまでのシェルの歴史を調べてみました。サブタイトルが微妙にタイトルとずれてる感じがするかもしれませんが、この記事はもともとシェルスクリプトは何を目指して設計された言語なのか疑問になって調べ始めたものだからです。時々「シェルスクリプトじゃなくて本物のプログラミング言語で書くべきだ」というような話を目にしますが、実際はシェルスクリプトはプログラミング言語なのか?そうではないのか?なので、むしろサブタイトルのほうが本題です。 ソースは wikipedia(日本語版は情報が古いので主に英語版)およびそこからの外部リンクなどを適当に調べてまとめたものです。内容に疑問に感じる場合は独自で調べるのをおすすめします。ちなみに ~sven_mascheck/ はお

                  Unix/Linux シェル考古学 ~シェルスクリプトが本物のプログラミング言語である理由~ - Qiita
                • shellnium - ShellスクリプトでWebブラウザを自動操作

                  Seleniumを使うとWebブラウザをプログラミングコードから自動操作できます。よくWebブラウザのテストなどで使われていますが、スクレイピングや業務システムの自動操作でも利用されます。 今回紹介するshellniumは、そんなSeleniumをシェルスクリプトで操作するソフトウェアです。 shellniumの使い方 実際のコードです。 #!/usr/bin/env bash source ./selenium.sh main() { # Googleのトップページに遷移 navigate_to 'https://google.co.jp' # 検索ボックスの要素を取得 local searchBox=$(find_element 'name' 'q') # 検索ボックスに入力&検索実行 send_keys $searchBox "タピオカ\n" } main ちゃんとWebブラウザを自

                    shellnium - ShellスクリプトでWebブラウザを自動操作
                  • What exactly was the point of [ “x$var” = “xval” ]? – Vidar's Blog

                    In shell scripting you sometimes come across comparisons where each value is prefixed with "x". Here are some examples from GitHub: if [ "x${JAVA}" = "x" ]; then if [ "x${server_ip}" = "xlocalhost" ]; then if test x$1 = 'x--help' ; then I’ll call this the x-hack. For any POSIX compliant shell, the value of the x-hack is exactly zero: this comparison works without the x 100% of the time. But why wa

                    • Windows 10で「PowerShell」を使い続ける人、「Bash」に移る人を分ける条件

                      関連キーワード Windows 10 | Windows | Linux | Microsoft(マイクロソフト) 前編「Windows 10で使えるようになった『Bash』 『PowerShell』との違いは?」は、Windowsユーザーにコマンドラインインタフェース(CLI)を提供する「Bash」と「PowerShell」の違いを紹介した。後編は最近のPowerShellの進化を振り返った上で、BashとPowerShellのどちらを選ぶべきかを考えるヒントを紹介する。 併せて読みたいお薦め記事 「Windows」ユーザーが気になる「Linux」の機能 「Windows」で「Linux」の機能を使うこれだけの方法 Windowsから「Linuxデスクトップ」へ乗り換えたくなる4つの理由 必修Linuxコマンド83選 知っておきたい「Linux」基礎コマンド一覧:A~F編 知っておきたい

                        Windows 10で「PowerShell」を使い続ける人、「Bash」に移る人を分ける条件
                      • 【 dnf 】コマンド(基礎編)――ソフトウェア(パッケージ)をインストールする

                        【 dnf 】コマンド(基礎編)――ソフトウェア(パッケージ)をインストールする:Linux基本コマンドTips(368) 本連載は、Linuxのコマンドについて、基本書式からオプション、具体的な実行例までを紹介していきます。今回は、ソフトウェアをパッケージの形でインストール/アンインストールする「dnf」コマンドです。

                          【 dnf 】コマンド(基礎編)――ソフトウェア(パッケージ)をインストールする
                        • Chromebookで簡単に開発環境を構築するシェルスクリプトを書いた (日本語化 + VS Code) - Qiita

                          安価かつ公式にLinuxがサポートされたデバイスとして優秀なChromebook。 Linuxコンテナの構築・削除が非常に簡単なので、初心者のLinux学習用にも便利だと思います。 しかしながら現時点での構築手順はやや面倒な点があり、最低限の環境を構築するにも若干の時間を要してしまいます。 ということで、どんな言語の開発者にとっても共通となるであろう最低限の環境を構築するスクリプト crostini-dev-setup-ja を書きました。 TL;DR 最低限の環境を整えるシェルスクリプトを書いた 日本語入力環境(fcitx-mozc) 日本語フォント VS Code VS Codeの日本語化アドオン 初心者向けを意識しているため、ロケール等可能な範囲で全て日本語化している GUIでの操作不要で、インストールスクリプトを叩くだけで全て設定できる セットアップ中はChromebookを触る必

                            Chromebookで簡単に開発環境を構築するシェルスクリプトを書いた (日本語化 + VS Code) - Qiita
                          • Bashシェルスクリプトでログ出力をシンプルに実現する方法 | ゲンゾウ用ポストイット

                            ゲンゾウ用ポストイット シェル / Bash / Linux / Kubernetes / Docker / Git / クラウドのtipsを発信。 はじめにシェルスクリプトはお世辞にも読みやすいコードとは言えません。 なのでできる限りシンプルに、短く記述したいのですが、工夫をしないと ログ出力 処理がごちゃごちゃしてしまいます。 例えば、すべての出力、エラー出力をログとして保存しようとすると以下のような記述ができます。 #!/usr/bin/env bash LOG_OUT=/tmp/stdout.log LOG_ERR=/tmp/stderr.log # 標準出力 echo foo1 >>$LOG_OUT 2>>$LOG_ERR echo foo2 >>$LOG_OUT 2>>$LOG_ERR echo foo3 >>$LOG_OUT 2>>$LOG_ERR # 標準エラー出力 ls

                              Bashシェルスクリプトでログ出力をシンプルに実現する方法 | ゲンゾウ用ポストイット
                            • Do Not Use '>' in Your Command Prompt (and How to Stay Safe in Shell) - Tanel Poder Consulting

                              Do Not Use '>' in Your Command Prompt (and How to Stay Safe in Shell) Over the years of troubleshooting performance problems in the Unix/Linux world, I have seen multiple cases where a regularly used command line tool in a customer server just stops working for some reason. The tool just returns immediately, doing absolutely nothing. No output printed, no coredumps and the exit code is zero (succe

                              • ShellScriptのみを使って今Webサーバを作るとしたら - Qiita

                                はじめに 本記事はQiita夏祭り2020の 「 〇〇(言語)のみを使って、今△△(アプリ)を作るとしたら」のテーマ記事となります. 皆さん,シェルスクリプトは書いてますか? 私は最近になってシェルスクリプトを書くようになったのですが,触って見たら意外と面白いなと思うようになりました. そんなこんなで今回はシェルスクリプトでWebサーバ作ってみようかと思い立ちました. ネタとしては何番煎じかわからないくらいありきたりですがご容赦ください🙇‍♂️ 作ったもの ポート4000でHTTPリクエストを受けてstatic配下のhtmlファイルを返すWebサーバをShellScriptで作成しました. 拙いコードですがGitHubにコードをおいておきます. リポジトリへのリンク 実装方法 以下では最も初期の状態からどのように肉付けを行ったかを順に述べていきます. 開発環境はmacOSでシェルの動作は

                                  ShellScriptのみを使って今Webサーバを作るとしたら - Qiita
                                • Advanced Shell Scripting Techniques: Automating Complex Tasks with Bash

                                  Advanced Shell Scripting Techniques: Automating Complex Tasks with Bash Bash scripting, a cornerstone of Unix and Linux system administration, offers powerful tools to automate repetitive tasks, streamline workflows, and handle complex operations. For those already comfortable with basic scripting, diving into advanced techniques can unlock new levels of efficiency and capability. This post will e

                                    Advanced Shell Scripting Techniques: Automating Complex Tasks with Bash
                                  • いろんなツールの設定ファイルの場所を覚えられないのでツールを作った | DevelopersIO

                                    fish の設定ファイルをいじろうとするたびに「fish config」でググるのが辛くなったのでツールを作りました。 anyconf https://github.com/inabajunmr/anyconf 動作イメージ 動作確認環境 $ go version go version go1.13.8 darwin/amd64 $ vim --version VIM - Vi IMproved 8.1 (2018 May 18, compiled Jun 5 2020 21:30:37) macOS version $ sw_vers ProductName: Mac OS X ProductVersion: 10.15.7 BuildVersion: 19H114 インストール go get github.com/inabajunmr/anyconf 使い方 anyconf で以下のよ

                                      いろんなツールの設定ファイルの場所を覚えられないのでツールを作った | DevelopersIO
                                    • GitHub - progrhyme/shelp: Git-based package manager for shell scripts written in Go

                                      You signed in with another tab or window. Reload to refresh your session. You signed out in another tab or window. Reload to refresh your session. You switched accounts on another tab or window. Reload to refresh your session. Dismiss alert

                                        GitHub - progrhyme/shelp: Git-based package manager for shell scripts written in Go
                                      • とほほのBash入門 - とほほのWWW入門

                                        シェルの種類 プロンプト メッセージ出力(echo, printf) メタ文字 シェル変数と環境変数($XXX) 特殊変数($x) 変数展開(${...}) 読み込み専用(readonly) シェルスクリプト(*.sh) コメント(#) 継続行(\) コマンド区切り(;) グループコマンド({...}) サブシェル((...)) コマンド置換($(...), `...`) 初期化ファイル(.bash_profile/.bashrc) 入出力・リダイレクト(>) ヒアドキュメント(<<) パイプ(|) バックグラウンド実行(&) ヒストリ(history) 行編集(Ctrl-a, Ctrl-b, ...) ディレクトリスタック(dirs) 条件実行(; && ||) 条件分岐(if) 条件分岐(case) 繰り返し(for) 繰り返し(while) 繰り返し(until) 選択肢(selec

                                        • シェルスクリプトのパッケージマネージャー「basher」の機能概要と使い方 - Qiita

                                          はじめに シェル環境で作業することの多いみなさんは、シェルスクリプトのパッケージ管理ツールが欲しいと思ったことはあるでしょうか? 私はあります。一時期その欲求が高まって、つい自作してしまったほどです。1 本稿では、最近見つけたシェルスクリプトのパッケージ管理ツールを1つ紹介します。 こちらです: https://github.com/basherpm/basher 「basher」という名前で、一見Bash専用に見えますが、実はZshとfishにも対応しているそうです。 Even though it is called basher, it also works with zsh and fish. 私自身、BashとZshで動作を確認しており、これから常用していく予定です。 中身は完全にシェルスクリプトで実装されています。 READMEやコマンドのヘルプをざっと見たところ、以下のような機

                                            シェルスクリプトのパッケージマネージャー「basher」の機能概要と使い方 - Qiita
                                          • https://twitter.com/termoshtt/status/1590634894916734977

                                              https://twitter.com/termoshtt/status/1590634894916734977
                                            • GitHub - DannyBen/bashly: Bash command line framework and CLI generator

                                              You signed in with another tab or window. Reload to refresh your session. You signed out in another tab or window. Reload to refresh your session. You switched accounts on another tab or window. Reload to refresh your session. Dismiss alert

                                                GitHub - DannyBen/bashly: Bash command line framework and CLI generator
                                              • 初学者向けpackage.jsonハンズオン - Qiita

                                                Node.js初学者向けにpackage.jsonハンズオンを実施しましたので、その時に作ったハンズオン資料を公開します。 npmコマンドやpackage.jsonに慣れることが目的のハンズオンの資料ですので、Node.jsとは何か?といった説明はしません。ご了承ください。 文章の手順通りに進めていけば、npmコマンドやpackage.json編集が体験できます! 事前準備 Node.jsのインストール 事前にNode.jsのインストールをお願いします。(すでにNode.jsがインストール済の方は飛ばしてください。) Windowsの場合 Windowsの方は、こちらの記事をご参照ください。Chocolatey > Nodist > Node.jsの順番でインストールします。 Windowsで、Chocolateyとnodistで、バージョン切り替え可能なNode.jsの環境を構築する M

                                                  初学者向けpackage.jsonハンズオン - Qiita
                                                • Bashのシェル展開 | フューチャー技術ブログ

                                                  Photo by Fotis Fotopoulos on Unsplash はじめにこんにちは、TIGの岸本卓也です。 シェルスクリプト連載 の7日目です。 シェルスクリプトで前提とするシェルは、大抵のコンピューターにインストールされていることが多いbashを選択することが多いと思います。当記事ではそのbashを対象に、意外と色々あるシェルの展開処理の概要をまとめました。シェルスクリプトに限らず普段のコマンド操作でも展開処理が便利なシーンは多々あると思いますので、皆さんの時間の節約に役立てば幸いです。 以降では、処理される順番に展開処理を紹介します。また、説明している動作と具体例はGNU bash version 5.1.4で確認しました。 なお、Windowsでは初期状態ではbashがありませんが、インストールする方法はいくつかあります。gitを使うためにインストールするGit for

                                                    Bashのシェル展開 | フューチャー技術ブログ
                                                  • ExifToolのかんたんなメモ

                                                    写真や画像、メディアのメタデータに関する最強ツール、Exiftool についての若干のメモ。基本とオプションと使い方。 Exiftool をときどき使ってきましたが、最近特に使用頻度が上がったので使い方のメモを残しておこうと思いました。でも多分、ここのメモなんかより検索したほうが役に立つ良い記事を発見できると思います。 自分のためになることは人様のためになるかもしれない。人様のためになることは自分のためにもなりましょう。何を言ってるんだか。 ExifTool とは 写真や画像やメディアファイルからメタデータを取得したり追加したり変更したりできるツールです。メディアカタログのアプリケーションにも多く組み込まれています。コマンドラインで利用します。 ExifTool by Phil Harvey 公式サイトはこちら。https://exiftool.org ※ 本家が落ちてるときのミラー  h

                                                      ExifToolのかんたんなメモ
                                                    • Shell productivity tips and tricks

                                                      Table of Contents Tab completion Keyboard shortcuts Navigating through history Shell expansions Real-life examples Summary Going further Shell productivity tips I estimate that I spend around 50% of my day working in my text editor and my terminal. Any way I can get more productive in these environments has a direct and measurable impact on my daily productivity as a whole. If you spend a good chu

                                                      • GitHub - shellspec/shellspec: A full-featured BDD unit testing framework for bash, ksh, zsh, dash and all POSIX shells

                                                        You signed in with another tab or window. Reload to refresh your session. You signed out in another tab or window. Reload to refresh your session. You switched accounts on another tab or window. Reload to refresh your session. Dismiss alert

                                                          GitHub - shellspec/shellspec: A full-featured BDD unit testing framework for bash, ksh, zsh, dash and all POSIX shells
                                                        • Macのターミナル(bash)を最低限色付けする - Qiita

                                                          デフォルトのままターミナルを使っているデザイナーとかは多いのかなと思った.zshやfishを入れるのが最高なんだけど,そこまで手をかけられないことは多い.そもそも使用頻度低いし.でもさすがにどぎつい黒はちょっとなぁみたいな. よくわからなくても記事通りに設定していけば出来上がるみたいな記事が見つけられなかったのでまとめてみる.既存のbashでも最低限いい感じに見やすくする設定を淡々と書き残していく. ターミナルを何度か触っている人なら10分もあれば設定できると思う. デフォルト 既存はこんな感じで悲しくなるほど見にくい(モチベーションも上がらない...) 1. bashrcを作る ターミナルを開いたら、

                                                            Macのターミナル(bash)を最低限色付けする - Qiita
                                                          • 知らないなんてもったいない!次世代ターミナル「Warp」 - Qiita

                                                            はじめに ターミナルは、プログラマーやシステム管理者などの技術者にとって、日常的な作業の中で欠かせないツールです。 しかし、デフォルトのターミナルには機能的な制限があり、作業効率が低下してしまうこともあります。 本記事では、そんな問題を解消してくれるWarpの基本的な使い方や便利な機能について紹介します。 Warpとは Rust言語ベースの非常に高速でUIがオシャなターミナルであり、個人であれば無料で利用することができます。 また、Warpには様々な便利機能がデフォルトで備わっており、コマンドの入力補完機能やAIコマンド検索機能などを活用することで高速で快適な開発を実現することができます。 インストール方法 インストール方法は、Warpホームページのダウンロード(https://www.warp.dev/) からか、Homebrewを使用してのダウンロードする方法の2つがあります。 インス

                                                              知らないなんてもったいない!次世代ターミナル「Warp」 - Qiita
                                                            • Amber Documentation

                                                              Documentation for Amber programming language

                                                                Amber Documentation
                                                              • 第42回 bashの便利な機能 | gihyo.jp

                                                                ここ数年、再利用するかも知れないコードは可読性がいいPythonで書くことが多かったものの、最近「スクリプトを書くほどでもないなぁ」的な作業が頻発し、bashのワンライナーで誤魔化してみたところ、最近のbashは変数展開や置換機能がずいぶん充実していて、かつてはsedやtr、awkを使って書いていた処理が、ほぼbashの機能だけで書けるようになっていました。 そこで改めてbashのマニュアル等を確認したら、「⁠へー、こんなこともできるんだ」的な機能があれこれ目について、ちょっとbashに対する認識を改めているところです。今回は、そのようなbashの便利な機能をいくつか紹介してみようと思います。 bashの来歴 Linux系ディストリビューションのデフォルトのシェルであるbashは、GNUプロジェクトが開発したシェルで、"Bourne Again SH"の略になっています。 この"Bourn

                                                                  第42回 bashの便利な機能 | gihyo.jp
                                                                • 「PATHを通す」とは何か、改めてまとめてみた

                                                                  使われ方 例えばgitというコマンドを入力したとき、 /usr/local/bin/gitという実行ファイルがあるか確認し、あれば実行する なかった場合、/usr/local/sbin/gitという実行ファイルがあるか確認し、あれば実行する なかった場合、/usr/bin/gitという実行ファイルがあるか確認し、あれば実行する (環境変数PATHに書かれているディレクトリの数だけくり返す) という流れで、実行するプログラムが決定される。 実行するプログラムが見つからなかった場合command not found: gitというエラーが出力される。 「環境変数PATHに書かれている場所を探してみたけど、gitなんてプログラムはなかったよ!」 という意味。この状態を「(gitコマンドに)PATHが通っていない」と呼ぶ。 PATHを通す方法 実行ファイルは存在するのにcommand not fo

                                                                    「PATHを通す」とは何か、改めてまとめてみた
                                                                  • シェルスクリプトのset -eを正しく使ってエラー処理を楽にしよう! - Qiita

                                                                    はじめに この記事は正しく理解してないとハマりやすい set -e を正しく使う方法を解説しています。実はこの記事は前に書いた「シェルスクリプトのset -eを罠を避けて使う方法」の簡略版で前回は実際の動作を詳しく書いたのですが、内容がうまくまとまらなくて満足しておらず、私が set -e を使う時に気をつけてることを考えるともっとシンプルだよなということで新たに書き直すことにしました。普通に set -e を使うだけならこの記事の範囲の理解で十分だと思います。詳しい挙動については前回の記事を参照して下さい。 2021-12-16 「4. set -e の効果がコマンド置換に継承しないシェル対策」を追加 set -e とはなにか? この記事を読むような人は知っているかと思いますが set -e とはコマンドの実行結果がエラー(= 終了ステータスが 0 以外)になった時にシェルスクリプトを自

                                                                      シェルスクリプトのset -eを正しく使ってエラー処理を楽にしよう! - Qiita
                                                                    • 【Bash】コマンドの終了ステータスを判定して何かしたい時のイディオム | クロジカ

                                                                      ホーム / ハック / 【Bash】コマンドの終了ステータスを判定して何かしたい時のイディオム

                                                                        【Bash】コマンドの終了ステータスを判定して何かしたい時のイディオム | クロジカ
                                                                      • 接続先サーバのファイルに手を付けずに、sshで接続したインタラクティブシェルで自動的にset -uする #bash #ssh | DevelopersIO

                                                                        接続先サーバのファイルに手を付けずに、sshで接続したインタラクティブシェルで自動的にset -uする #bash #ssh こんにちは、ターミナル住人の平野です。 シェルスクリプトの先頭には原則必ずset -euをつけましょうね、 というのはいろんな所で言及されているので見たことがある人も多いと思います。 このうちset -uですが、変数が未定義の時に想定外の挙動になってしまうことが防げるので、 慎重に操作をするような場面では、インタラクティブシェルでも有効にした方がいい場面があります。 sshでEC2にログインした時これを行いたいとして、ログイン後にset -uと毎回やるのは面倒です。 もちろんこう言った設定は.bashrcに書くというのが定石ですね。 しかしバッチサーバー用途のインスタンスなどはユーザを共通で使用することも多く、 そこにある.bashrcを変更してしまうことには抵抗が

                                                                          接続先サーバのファイルに手を付けずに、sshで接続したインタラクティブシェルで自動的にset -uする #bash #ssh | DevelopersIO
                                                                        • awk とシェルとの値の受け渡しについて - Qiita

                                                                          概要 awk への値の受け渡しの記事はよく見かけるが awk からシェルへの値の受け渡しの記事が少ないのでまとめてみた。 シェルから awk への値の受け渡し awk への値の受け渡しは -v オプションを使うと覚えておけば間違いない。 #!/bin/sh # -v オプションで値を手入力 echo | awk -v foo=before '{print foo}' # 実行結果: before # 後ろには書けない echo | awk '{print foo}' -v foo=after # 実行結果: awk: fatal: cannot open file `-v' for reading (No such file or directory) # -v 無しで渡す方法もあるが、BEGINブロックで値を参照できない echo | awk 'BEGIN{print foo} {pri

                                                                            awk とシェルとの値の受け渡しについて - Qiita
                                                                          • bashの組込みコマンド自作によるスクリプトの高速化

                                                                            はじめに bashには次の2つの理由によって、組み込みコマンド(builtin command)というものが存在します。 スクリプトの高速化のため。組み込みコマンドであれば通常のコマンドを実行する場合に比べてプロセスの生成コスト(fork()/exec())が削減できる bash自身の状態を変更させるため。例えばcdコマンドを/bin/cdとして用意してbashから当該コマンドを実行しても、当該コマンドのpwdが変更されるだけで、bashのそれは変更されないため、意味がない 今回は前者に焦点を合わせて、その効果と、組み込みコマンドの自作方法について述べます。 予備知識: 組込みコマンドによるスクリプト高速化の効果 組込みコマンドそのものの存在、及びその存在意義について既にご存知のかたは、この節を飛ばしてもらって構いません。 例えば皆さんがbashスクリプトからechoコマンドを実行した場合

                                                                              bashの組込みコマンド自作によるスクリプトの高速化
                                                                            • シェルスクリプトで文字列の分割 (split) と結合 (join) をする時のベストプラクティス - Qiita

                                                                              はじめに CSV のようにカンマ区切りの文字列をそれぞれのフィールドに分割するにはどうするか?というネタです。よく見るネタなのですが、良いとは言えないコードが多いのでまとめたいと思います。 なお例として CSV を扱っていますが、主題は文字列の分割 (split) と結合 (join) なので、ダブルクォートでくくることでカンマや改行も入れられるなどという本気の CSV 対応はしません。仕様が複雑なのでそのようなファイルを扱う場合は別の言語のよく知られたライブラリを使うことをおすすめします。この記事で扱う CSV とは各フィールドがカンマで区切られているというだけのものです。 前提 一行のデータは分割して位置パラメーターに入れる 一行の文字列を分割した結果は、位置パラメータ ($1, $2, $3, ...) に代入するのがおすすめです。位置パラメータは POSIX 準拠(つまり bash

                                                                                シェルスクリプトで文字列の分割 (split) と結合 (join) をする時のベストプラクティス - Qiita
                                                                              • リバースシェルを試してみた - RAKUS Developers Blog | ラクス エンジニアブログ

                                                                                こんにちは、インフラエンジニアのfro-rivです。 セキュリティ関連でよく耳にするリバースシェル(reverse shell)について、 実際にどうやって実現するのか気になったので調べた結果をまとめてみました。 本記事に記載の手順は、不正な通信とみなされる可能性がありますので、 試す際は管理下のサーバで実施する・適切な許可を取得するなど法的な制約を遵守してください。 リバースシェルとは リバースシェルを試してみる 実現したいこと 前提 事前準備 パターン1:bash パターン2:netcat パターン3:python さいごに 参考 リバースシェルとは リバースシェルとは、自ら接続先サーバ(以下、リモートサーバ)に接続しに行く通常の流れとは違い、 リモートサーバからシェルを渡しに来る通信方法です。 接続の際は、自ら(接続元で)任意のポートをリッスンし、リモートサーバがアクセスしに来る形を

                                                                                  リバースシェルを試してみた - RAKUS Developers Blog | ラクス エンジニアブログ
                                                                                • Mac ターミナル zsh の設定・カスタマイズ(シェルオプション)

                                                                                  参考元:Moving to zsh, part 2: Configuration Files /etc/ 内のファイルは、それらが存在する場合、すべてのユーザーに対して起動されます。 .z から始まるファイルは個々のユーザー専用の設定ファイルです。 デフォルトでは zsh はホームディレクトリのルート($HOME)でユーザーの .z から始まるファイルを探しますが、この動作は、ZDOTDIR 環境変数で別のディレクトリに変更できます。 また、ターミナルを起動したときに立ち上がるシェルのことをログインシェル、コマンドラインで bash や zsh と入力した時に起動するシェルのことをインタラクティブシェルと呼びます。 bash の場合は、ログインシェルに .bash_profile を、インタラクティブシェルに .bashrc を使用するので、.bashrc を .bash_profile

                                                                                  新着記事