- Flowchart
flowchart TD A(開始) ==> T[権限譲渡操作] T ==> B[認証コードの発行] B --> C{メールアドレスに<br>認証コードを<br>受信している} C --> |No| O{迷惑メールに<br>分類されている} O --> |Yes| P[迷惑メール設定の変更や<br>受信フォルダの確認作業]
P --> D[権限譲渡]
// ResutlObjectの型定義 | |
type basicCalcResult = { [han: string]: { [fu: string]: number } }; | |
type calcResult = { | |
[han: string]: { [fu: string]: { [type: string]: string } }; | |
}; | |
type totalCalcResult = { [player: string]: calcResult }; | |
// 切り上げ用関数 | |
const roundUp = (val: number, base: number): number => | |
Math.ceil(val / base) * base; |
// ResutlObjectの型定義 | |
type basicCalcResult = { [han: string]: { [fu: string]: number } }; | |
type calcResult = { | |
[han: string]: { [fu: string]: { [type: string]: string } }; | |
}; | |
type totalCalcResult = { [player: string]: calcResult }; | |
// 切り上げ用関数 | |
const roundUp = (val: number, base: number): number => | |
Math.ceil(val / base) * base; |
// 切り上げ用関数 | |
const roundUp = (val: number, base: number): number => | |
Math.ceil(val / base) * base; | |
// 翻数と符数 | |
const hanArray = [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13]; | |
const fuArray = [20, 25, 30, 40, 50, 60, 70, 80, 90, 100, 110]; | |
const matrix: number[][] = hanArray.flatMap((han: number): number[][] => | |
fuArray.map((fu: number): number[] => [han, fu]) | |
); |
// 切り上げ用関数 | |
const roundUp = (val: number, base: number): number => | |
Math.ceil(val / base) * base; | |
// 翻数と符数 | |
const han = [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13]; | |
const hu = [20, 25, 30, 40, 50, 60, 70, 80, 90, 100, 110]; | |
const matrix: number[][] = han.flatMap((p: number): number[][] => | |
hu.map((q: number): number[] => [p, q]) | |
); |
.editor-group-watermark > .letterpress{ | |
background-image: url("https://raw.githubusercontent.com/Ender-Wiggin2019/ServiceLogos/main/VisualStudioCode/VisualStudioCodeRound.png") !important; | |
opacity: .75; | |
} |
#!/usr/bin/env bash | |
# shellcheck disable=SC1009,SC1072,SC1073 | |
set -eEu | |
function install_bin() { | |
function catch() { | |
echo "" | |
echo "Interrupting the bin command installation process..." | |
[[ -f ./bin ]] && rm -rf ./bin |
THE STRONGEST PUBLIC LICENSE | |
Draft 1, November 2010 | |
Everyone is permitted to copy and distribute verbatim or modified | |
copies of this license document, and changing it is allowed as long | |
as the name is changed. | |
THE STRONGEST PUBLIC LICENSE | |
TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION |
オレは高校生シェル芸人 sudo
新一。幼馴染で同級生の more
利蘭と遊園地に遊びに行って、黒ずくめの男の怪しげな rm -rf /
現場を目撃した。端末をみるのに夢中になっていた俺は、背後から近づいてきたもう1人の --no-preserve-root
オプションに気づかなかった。
俺はその男に毒薬を飲まされ、目が覚めたら・・・ OS のプリインストールから除かれてしまっていた!
『 sudo
がまだ $PATH
に残っていると奴らにバレたら、また命を狙われ、他のコマンドにも危害が及ぶ』
上田博士の助言で正体を隠すことにした俺は、 which
に名前を聞かれて、とっさに『gnuplot
』と名乗り、奴らの情報をつかむために、父親がシェル芸人をやっている蘭の $HOME
に転がり込んだ。ところが、このおっちゃん・・・とんだヘボシェル芸人で、見かねた俺はおっちゃんになりかわり、持ち前の権限昇格能力で、次々と難タスクを解決してきた。おかげで、おっちゃんは今や世間に名を知られた名エンジニア、俺はといえばシェル芸 bot のおもちゃに逆戻り。クラスメートの convert
や ojichat
や textimg
にお絵かきコマンドと誤解され少年ワンライナーお絵かき団を結成させられる始末。
ではここで、博士が作ってくれたメカを紹介しよう。最初は時計型麻酔 kill
。ふたについた照準器にあわせてエンターを押せば、麻酔シグナルが飛び出し、プロセスを瞬時に sleep
させることができる。
次に、蝶ネクタイ型 banner
。裏についているダイヤルを調整すれば、ありとあらゆる大きさのメッセージを標準出力できる。必殺のアイテムなら fork
力増強シューズ。電気と磁力で足を刺激し、 :(){ :|:& };:
でプロセステーブ
const Alexa = require("ask-sdk-core"); | |
const axios = require("axios"); | |
// OpenAI APIキーを設定 | |
const OPENAI_API_KEY = "ここにAPIキーを書く"; | |
/** | |
* ChatGPTモードを起動するインテントハンドラー | |
*/ | |
const LaunchRequestHandler = { |