89 lines
2.1 KiB
JavaScript
89 lines
2.1 KiB
JavaScript
#!/usr/bin/env node
|
|
|
|
/**
|
|
* シンプルなコマンドラインスクリプト
|
|
*
|
|
* このスクリプトは、引数を受け取り、その内容を表示します。
|
|
* `--help` オプションを指定すると、使い方を表示します。
|
|
*
|
|
* @module script
|
|
*/
|
|
|
|
|
|
/**
|
|
* スクリプトのエントリーポイント
|
|
*
|
|
* @function main
|
|
* @param {string[]} args - コマンドライン引数 (process.argv を除いたもの)
|
|
* @returns {void}
|
|
*
|
|
* @example
|
|
* // メッセージを表示する
|
|
* node src/script/sampleScript.js Hello
|
|
*
|
|
* @example
|
|
* // ヘルプを表示する
|
|
* node src/script/sampleScript.js --help
|
|
*/
|
|
const main = (args) => {
|
|
if (args.includes('--help')) {
|
|
displayHelp();
|
|
return;
|
|
}
|
|
// 引数がない場合のデフォルトメッセージ
|
|
if (args.length === 0) {
|
|
handleError('エラー: 引数が必要です。\n`node script.js --help` で使い方を確認してください。');
|
|
return;
|
|
}
|
|
processArguments(args);
|
|
}
|
|
|
|
/**
|
|
* ヘルプメッセージを表示する
|
|
*
|
|
* @function displayHelp
|
|
* @returns {void}
|
|
*/
|
|
const displayHelp = () => {
|
|
console.log(`
|
|
Usage: node script.js [message]
|
|
|
|
Options:
|
|
--help ヘルプを表示
|
|
`);
|
|
};
|
|
|
|
|
|
/**
|
|
* エラーメッセージを表示し、終了する
|
|
*
|
|
* @function handleError
|
|
* @param {string} message - エラーメッセージ
|
|
* @returns {void}
|
|
*
|
|
* @example
|
|
* handleError("エラー: 引数が必要です。");
|
|
*/
|
|
const handleError = (message) => {
|
|
console.error(message);
|
|
process.exit(1);
|
|
}
|
|
|
|
/**
|
|
* 引数を処理してメッセージを表示する
|
|
*
|
|
* @function processArguments
|
|
* @param {string[]} args - コマンドライン引数
|
|
* @returns {void}
|
|
*
|
|
* @example
|
|
* processArguments(["Hello", "World"]);
|
|
* // 出力: "Hello World"
|
|
*/
|
|
function processArguments(args) {
|
|
const message = args.join(' ');
|
|
console.log(`入力されたメッセージ: ${message}`);
|
|
}
|
|
|
|
// コマンドライン引数を取得して main 関数を実行
|
|
main(process.argv.slice(2)); |