Deleted articles cannot be recovered. Draft of this article would be also deleted. Are you sure you want to delete this article?

sudo コマンドの "-i" オプションと "-E" オプションについてメモ。 ・Man page of SUDO https://linuxjm.osdn.jp/html/sudo/man8/sudo.8.html ■ -i オプションについて ドキュメント曰く パスワード・データベースの変身対象ユーザの項目でログイン・シェルとして指定されているシェルを実行する。すなわち、 .profile や .login といったログイン用のリソース・ファイルが、 シェルによって読み込まれることになる。 とのこと。これを指定すると $HOME/.bash_profile なりが読み込まれるということのようです。 動作確認を。 # cat /tmp/env/test.sh #!/bin/sh echo $ETC_PROFILE echo $BASH_PROFILE # cat /etc/profil
これまでの反省 OpenSSLを使ってオレオレ証明書を作った経験は何度かあるのですが、先人がネットで紹介されていた手順のとおりに操作しただけで、各サブコマンドの機能や設定、オプションの意味など何も理解していませんでした。 今回、多数のプライベートCAとクライアント証明書をスクリプトで自動作成することになったので、これを機会にopensslコマンドの勉強を始めました。 なぜopensslコマンドが難しいのか 個人的に難しいと思う点をまとめたらこんなにありました… コマンド(サブコマンド)の数が多く、しかも機能が重複している OpenSSLコマンド(1.0.2): https://www.openssl.org/docs/man1.0.2/man1/ 同じ目的のための方法がいろいろある 例えば証明書発行を [秘密鍵を作成] → [署名要求を作成] → [署名して証明書を発行] と3手順で行う方
西澤です。AWS Summit 2018 San Franciscoで発表されたACMの新機能であるPrivate Certificate Authorityを使って、プライベートな認証局を作ってみました。調べながらとりあえず動くところまではたどり着きましたが、不適切な箇所などあればご指摘いただけますと助かります。 Introducing AWS Certificate Manager Private Certificate Authority What Is ACM PCA? - AWS Certificate Manager Private Certificate Authority ACMプライベートCAを利用する上での注意 今回リリースされたACMのプライベートCAを利用したマネージドなプライベート認証局を用意することにより、プライベートな証明書を任意の名前やライフサイクルで自由に
opensslを使用してChromeで使える自己署名証明書(オレオレ証明書)を作成する方法を解説します。 また、簡単に生成できるツールも用意しました。よければご活用下さい(dockerが必要です) 発端 ローカル環境でhttpsを実現するために、オレオレ(自己署名)SSL証明書を作成したのですがchromeではNET::ERR_CERT_COMMON_NAME_INVALIDとなってしまいました。 原因は、Chromeの仕様変更により、ドメイン名のチェックをCommon Name(通称CN)ではなくSubject Alternative Names(通称SAN)を参考にする様になったためだそうです。 ここではSubject Alternative Namesを含んだ自己署名サーバ証明書の作り方を解説します。 (追記) 自己署名証明書を作成するツールを作りました。 self-sign-cer
TL;DR xargsはGNU版(Linuxなど)とBSD版(Macなど)が存在し挙動に違いがある。 BSD版のxargsでは-Iオプション(文字列置換)を利用する場合にバイト数の制限がある。 -Iオプションは置換後の文字列が255バイト以上になった場合に置換されない。 -Jオプションを代わりに利用することでバイト数制限の問題は解決するが、-Iオプションとは異なる挙動もあるので注意が必要。 MacにGNU版のxargsを入れてしまうのも手。 実行環境 本記事は、以下の環境にて実行しています。 macOS Catalina 10.15.7 (Intel) GNU bash, version 3.2.57 ハマった点 スクリプトを書くまでもないけど自動化したい処理をsed/awk/xargsなどのコマンドを駆使したワンライナーで済ますことは多いと思います。 また、アドホックな処理では各人のロー
$ /usr/bin/printf '\xef\xbc\x91\xef\xbc\x96\xe9\x80\xb2\xe6\x95\xb0 \357\274\230\351\200\262\346\225\260 \u30e6\u30cb\u30b3\u30fc\u30c9 \n' 16進数 8進数 ユニコード $ printf '\xef\xbc\x91\xef\xbc\x96\xe9\x80\xb2\xe6\x95\xb0 \357\274\230\351\200\262\346\225\260 \u30e6\u30cb\u30b3\u30fc\u30c9 \n' 16進数 8進数 \u30e6\u30cb\u30b3\u30fc\u30c9 $ /bin/echo -e '\xef\xbc\x91\xef\xbc\x96\xe9\x80\xb2\xe6\x95\xb0 \357\274\
nslookupだけを叩くと、引き続きコマンドを叩くことが出来るプロンプトが表示されます。 そこでset type=nsとすると、あるドメインについて、設定されているネームサーバを表示するモードになりますので、調べたいドメインを引き続き入力すると、そのドメインのネームサーバ情報を引き出すことが出来ます。 ただ、その情報源はあなたのPCに設定されている参照用ネームサーバが保持している情報(キャッシュされていればそのキャッシュでありNon-authoritative answerと表示される。キャッシュがなければルートサーバから再起的に情報を引く)であり、ドメインの設定されているネームサーバから直接情報を引きたければ、さらにserver=コマンドで情報入手元を設定することが出来ますから、そこでさらにドメインを引けばOKです。 私のWindows PCでgoo.ne.jpを引いてみた例です。 C
改行コード変換はtrやPerlを使うやり方がよく知られているけど、AWKだと、RS (input record separator) や ORS (output record separator) を使うと柔軟に変換できるようだ。 awk -v ORS='\r\n' '{print}' < lf.txt > crlf.txt awk -v RS='\r\n' '{print}' < crlf.txt > lf.txt awk -v RS='\r' '{print}' < cr.txt > lf.txt awk -v RS='\r' -v ORS='\r\n' '{print}' < cr.txt > crlf.txt
はじめに 最近、bash, awk, jqにお世話になっております。 特にawkは使い始めたばかりなので、awkを使ってワンラインでexcelのvlookup的なことをやりたいときにどうすればよいのかわからなくて、excelで頑張ってたりしてました。 でもエンジニアならば、excelなんて使わなくてもコマンドラインでぱぱっと操作できたほうが格好いいじゃない?と思ったので挑戦してみます。 目標 以下の2つの表を想定する。 ユーザ一覧を格納した表(users.csv) id name -- ---- 1 一郎 2 二郎 3 三郎 4 四郎 何かしらの条件をみたしたIDの表(condition.csv) id -- 2 4 この2つの表から以下を得たい。 ゴール id name condition -- ---- ---- 1 一郎 F 2 二郎 T 3 三郎 F 4 四郎 T conditio
sedやawkで、指定された範囲の行を除外(というか、削除)したいということがあったので、その備忘。d 以下のように記述して実行してやることで、対象となる範囲の行を除外して出力できる。 sed '/start/,/end/d' PATH awk '/start/,/end/{next}{print}' PATH [root@BS-PUB-CENT7-01 ~]# cat test.txt 111 222 333 444 <span style="color: #ff0000;">start eee ddd sss end</span> 555 666 777 888 999 [root@BS-PUB-CENT7-01 ~]# cat test.txt | sed '/start/,/end/d' 111 222 333 444 555 666 777 888 999 [root@BS-PU
Twitterをボケーッと眺めていたところ、xargsで呼び出したコマンドにキー入力をしたいという内容があったので、どうやったらできるのか調べてみた。 通常、対象のプロセスで標準入力が開いてないとだいたいの(というか、普通の)コマンドは処理を待たずに終了してしまう。なので、なんとかしてターミナルを標準入力として渡してやればいいということになる。 1. /dev/ttyを読み込ませる 以下のように、/dev/ttyをxargsで呼び出したコマンド内部で読み込ませる事で、ターミナルの入力を渡すことができる。 command... | xargs -I@ sh -c '</dev/tty command... @' 例えば、以下のようにすることでxargsで受け付けたファイルに対して対話式にrmをすることができる。 ls -1 | xargs -I @ sh -c '</dev/tty rm -
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く