CINXE.COM
[B! shell] shunt_iのブックマーク
<!DOCTYPE html> <html lang="ja" data-page-scope="User" data-stable-request-url="https://b.hatena.ne.jp/shunt_i/shell/" data-device-type="PC" data-sentry-environment="production" data-sentry-sample-rate="0.1" data-author-name="shunt_i" data-page-subtype="tag" data-page-type="user" data-platform="pc" data-search-query="" data-tag-filter="shell" data-visitor-name="ゲスト" > <head> <!-- Google Tag Manager --> <script> (function(w,d,s,l,i){w[l]=w[l]||[];w[l].push({'gtm.start': new Date().getTime(),event:'gtm.js'});var f=d.getElementsByTagName(s)[0], j=d.createElement(s),dl=l!='dataLayer'?'&l='+l:'';j.async=true;j.src= 'https://www.googletagmanager.com/gtm.js?id='+i+dl;f.parentNode.insertBefore(j,f); })(window,document,'script','dataLayer','GTM-5TDHQX'); </script> <!-- End Google Tag Manager --> <meta charset="UTF-8"> <title>[B! shell] shunt_iのブックマーク</title> <script src="https://b.st-hatena.com/21bb37de101e3d895eac61554a1ca07012b63961/js/v4/bookmark.js" async></script> <link type="text/css" rel="stylesheet" href="https://b.st-hatena.com/21bb37de101e3d895eac61554a1ca07012b63961/css/v4/bookmark.css" /> <link type="text/css" rel="stylesheet" href="https://b.st-hatena.com/21bb37de101e3d895eac61554a1ca07012b63961/css/v4/bookmark.star.css" /> <link rel="canonical" href="https://b.hatena.ne.jp/shunt_i/shell/" /> <link rel="shortcut icon" type="image/x-icon" href="/favicon.ico" /> <meta name="viewport" content="width=device-width"> <link rel="search" type="application/opensearchdescription+xml" title="はてなブックマーク検索" href="/opensearch.xml" /> <link rel="search" type="application/opensearchdescription+xml" title="shunt_i のブックマーク内検索" href="/shunt_i/opensearch.xml"> <link rel="apple-touch-icon-precomposed" href="https://b.st-hatena.com/21bb37de101e3d895eac61554a1ca07012b63961/images/v4/public/apple-touch-icon-precomposed.png" /> <link rel="mask-icon" href="https://b.st-hatena.com/21bb37de101e3d895eac61554a1ca07012b63961/images/v4/public/safari-pinned-tab-icon.svg" color="#00A4DE" /> <meta name="msapplication-navbutton-color" content="#2C6EBD" /> <meta name="msapplication-task" content="name=はてなブックマーク; action-uri=/; icon-uri=https://b.st-hatena.com/21bb37de101e3d895eac61554a1ca07012b63961/images/v4/public/icons/bookmark.ico" /> <meta name="msapplication-task" content="name=マイブックマーク; action-uri=/my; icon-uri=https://b.st-hatena.com/21bb37de101e3d895eac61554a1ca07012b63961/images/v4/public/icons/my-bookmark.ico" /> <meta name="msapplication-task" content="name=お気に入りのブックマーク; action-uri=/my/favorite; icon-uri=https://b.st-hatena.com/21bb37de101e3d895eac61554a1ca07012b63961/images/v4/public/icons/favorite-bookmark.ico" /> <meta name="msapplication-task" content="name=人気エントリー; action-uri=/hotentry; icon-uri=https://b.st-hatena.com/21bb37de101e3d895eac61554a1ca07012b63961/images/v4/public/icons/hotentry.ico" /> <meta http-equiv="X-UA-Compatible" content="IE=edge"> <meta name="referrer" content="always"> <link rel="author" href="http://www.hatena.ne.jp/shunt_i/" /> <link rel="alternate" type="application/rss+xml" href="/shunt_i/bookmark.rss?tag=shell" /> <script> function isMobile() { const html = document.documentElement; const deviceType = html.dataset.deviceType || ''; if (deviceType.length > 0) { return deviceType === 'MOBILE'; } else { const maxMobileWidth = 480; const windowWidth = window.innerWidth; return maxMobileWidth >= windowWidth; } } </script> </head> <body class="page-centerarticle fixed-header"> <!-- Google Tag Manager (noscript) --> <noscript><iframe src="https://www.googletagmanager.com/ns.html?id=GTM-5TDHQX" height="0" width="0" style="display:none;visibility:hidden"></iframe></noscript> <!-- End Google Tag Manager (noscript) --> <div class="link-app-banner js-dynamic-link-app-banner is-hidden"> <button class="link-app-banner-btn-close js-dynamic-link-app-banner-close-button"><span>close</span></button> <a class="link-app-banner-btn" href="https://hatenabookmark.page.link/app"> <div class="link-app-banner-btn-detail"> <div class="link-app-banner-icon"><img src="/images/v4/public/app/ic-ios.svg" alt="はてなブックマークアプリ"></div> <p class="link-app-banner-text">サクサク読めて、<br class="link-app-banner-text-newline">アプリ限定の機能も多数!</p> </div> <div class="link-app-banner-btn-open">アプリで開く</div> </a> </div> <header id="global-header" data-portal-static-origin="//cdn.www.st-hatena.com"> <div id="header" class="global-header-inner js-global-header-inner"> <h2 id="gh-logo"><a href="/" data-gtm-label="gh-blogo"><span>はてなブックマーク</span></a></h2> <div class="is-guest js-guest is-hidden"> <input id="gh-search-icon-check" type="checkbox" checked="checked" /> <label class="gh-search-icon" for="gh-search-icon-check" aria-label="検索を閉じる"><span>閉じる</span></label> <form class="gh-searchbox" method="get" action="/search_dwim" role="search"> <input value="" name="q" type="search" class="gh-inputtext" placeholder="キーワード・URLを検索" size="40" /> <input value="" type="submit" class="gh-search-button" /> </form> <ul class="gh-service-menu"> <li><a href="/guide" data-gtm-label="gh-guest-guide">はてなブックマークって?</a></li> <li><a href="/guide/tools" data-gtm-label="gh-guest-tools">アプリ・拡張の紹介</a></li> <li><a href="https://www.hatena.ne.jp/register?location=https%3A%2F%2Fb.hatena.ne.jp%2F%3Fregistered_from%3Dglobal-header&via=201037" class="gh-guest-register" data-gtm-label="gh-guest-register">ユーザー登録</a></li> <li><a href="https://www.hatena.ne.jp/login?location=https%3A%2F%2Fb.hatena.ne.jp%2Fshunt_i%2Fshell%2F" rel="nofollow" class="gh-guest-login" data-gtm-label="gh-guest-login">ログイン</a></li> <li class="gh-hatena-logo"><a href="http://www.hatena.ne.jp/"><img src="https://b.st-hatena.com/21bb37de101e3d895eac61554a1ca07012b63961/images/v4/public/logo/logo-global-white.svg" alt="Hatena" width="74px" height="13px"/></a></li> </ul> </div> <noscript> <ul class="gh-service-menu"> <li><a href="https://www.hatena.ne.jp/logout?location=https%3A%2F%2Fb.hatena.ne.jp%2F">ログアウト</a></li> </ul> </noscript> <script type="text/x-template" id="template-menu-hatena-user"> <form class="gh-searchbox" method="get" action="/search_dwim" role="search"> <input value="" name="q" type="search" class="gh-inputtext" placeholder="キーワード・URLを検索" size="40" /> <input value="" type="submit" class="gh-search-button" /> </form> <ul class="gh-service-menu"> <li><a class="hotentry" data-gtm-label="gh-mypage" href="{{hotentry_url}}"><img src="{{user_image_url}}" class="header-profile-icon" width="16" height="16" alt="{{username}}" /></a><a class="hotentry" data-gtm-label="gh-mypage" href="{{hotentry_url}}">マイページ</a></li> <li><a class="bookmark" data-gtm-label="gh-bookmark" href="{{bookmark_url}}">ブックマーク</a></li> <li><a class="unread_bookmark" data-gtm-label="gh-ril" href="{{bookmark_stock_url}}">あとで読む</a></li> <li><a class="add" data-gtm-label="gh-add" href="{{add_bookmark_url}}">追加</a></li> <li><a class="tools" data-gtm-label="gh-tools" href="/guide/tools">ツール</a></li> <li><a class="config" data-gtm-label="gh-config" href="/-/my/config/profile">設定</a></li> <li><a class="feedback" data-gtm-label="gh-feedback" href="/-/feedback/hatena_bookmark" target="_blank">フィードバック</a></li> <li id="header-username" class="gh-dropdown-services" data-gtm-label="gh-services" title="利用中のサービス" data-name="{{username}}"> <span class="header-dropdown gh-dropdown" tabindex="0"> <img src="https://b.st-hatena.com/21bb37de101e3d895eac61554a1ca07012b63961/images/v4/public/common/usermenu-wh.svg" alt="利用中のサービス" width="24" height="24" /> </span> <dl class="header-window" id="username-window"></dl> </li> <li id="header-notify" data-gtm-label="gh-notify" class="gh-dropdown-notify" title="あなたへのお知らせ"> <span class="header-dropdown gh-dropdown" tabindex="0"> <img src="https://b.st-hatena.com/21bb37de101e3d895eac61554a1ca07012b63961/images/v4/public/common/notify-wh.svg" alt="あなたへのお知らせ" width="25" height="25" /> <span class="notify-count"></span> </span> <div id="notify-window" class="header-window header-notify"></div> </li> <li class="gh-hatena-logo"><a href="http://www.hatena.ne.jp/"><img src="https://b.st-hatena.com/21bb37de101e3d895eac61554a1ca07012b63961/images/v4/public/logo/logo-global-white.svg" alt="Hatena" width="74px" height="13px"/></a></li> </ul> </script> </div> </header> <div id="info-header"><div id="info-header-message"></div><span></span></div> <div class="global-notification is-hidden js-global-notification"></div> <div id="container" class="js-user-page-container" data-author-name="shunt_i" > <div class="centerarticle-wrapper"> <div class="left-container"> <div class="js-user-info" data-user-name="shunt_i"> <div class="centerarticle-profile"> <a href="http://profile.hatena.ne.jp/shunt_i/"> <img src="https://cdn.profile-image.st-hatena.com/users/shunt_i/profile.png" class="centerarticle-profile-image"/> </a> <div class="centerarticle-profile-main"> <a href="http://profile.hatena.ne.jp/shunt_i/" class="centerarticle-profile-nickname js-user-info-nickname" target="_blank" rel="noopener">shunt_i</a> <a href="/shunt_i/bookmark" class="centerarticle-profile-username">id:shunt_i</a> </div> </div> <ul class="userprofile-status"> <li> <a href="/shunt_i/bookmark" class="userprofile-status-link" data-gtm-click-label="user-count-bookmark"> <span class="userprofile-status-count">2,761</span> <span class="userprofile-status-text">ブックマーク</span> </a> </li> <li> <a href="/shunt_i/follow" class="userprofile-status-link" data-gtm-click-label="user-count-follow"> <span class="userprofile-status-count js-total-followings">-</span> <span class="userprofile-status-text">お気に入り</span> </a> </li> <li> <a href="/shunt_i/follower" class="userprofile-status-link" data-gtm-click-label="user-count-follower"> <span class="userprofile-status-count js-total-followers">-</span> <span class="userprofile-status-text">お気に入られ</span> </a> </li> </ul> </div> <div class="centerarticle-mainNavi"> </div> <div class="centerarticle-sidebar-menu js-user-tags"> <h3 class="centerarticle-aside-title">タグ</h3> <ul class="centerarticle-sub-navi"> <li><a href="/shunt_i/bookmark" data-gtm-click-label="user-tags-all">すべて</a></li> <li class="js-frequent-tag is-hidden"> <a href="/shunt_i/%20%E3%81%82%E3%81%A8%E3%81%A7%E8%AA%AD%E3%82%80/" data-gtm-click-label="user-tags"> あとで読む <span class="count">(27)</span> </a> </li> <li class="js-frequent-tag is-hidden"> <a href="/shunt_i/%20%E3%81%BE%E3%81%A8%E3%82%81/" data-gtm-click-label="user-tags"> まとめ <span class="count">(14)</span> </a> </li> <li class="js-frequent-tag is-hidden"> <a href="/shunt_i/%20%E3%81%BE%E3%81%A8%E3%82%81%E3%81%AE%E3%81%BE%E3%81%A8%E3%82%81/" data-gtm-click-label="user-tags"> まとめのまとめ <span class="count">(1)</span> </a> </li> <li class="js-frequent-tag is-hidden"> <a href="/shunt_i/%20%EF%BC%88%E3%83%BB%E2%88%80%E3%83%BB%EF%BC%89%EF%BD%B2%EF%BD%B2!!/" data-gtm-click-label="user-tags"> (・∀・)イイ!! <span class="count">(2)</span> </a> </li> <li class="js-frequent-tag is-hidden"> <a href="/shunt_i/2011%E5%B9%B4/" data-gtm-click-label="user-tags"> 2011年 <span class="count">(3)</span> </a> </li> <li class="js-frequent-tag is-hidden"> <a href="/shunt_i/3d/" data-gtm-click-label="user-tags"> 3d <span class="count">(1)</span> </a> </li> <li class="js-frequent-tag is-hidden"> <a href="/shunt_i/AI/" data-gtm-click-label="user-tags"> AI <span class="count">(37)</span> </a> </li> <li class="js-frequent-tag is-hidden"> <a href="/shunt_i/API/" data-gtm-click-label="user-tags"> API <span class="count">(2)</span> </a> </li> <li class="js-frequent-tag is-hidden"> <a href="/shunt_i/AS3/" data-gtm-click-label="user-tags"> AS3 <span class="count">(3)</span> </a> </li> <li class="js-frequent-tag is-hidden"> <a href="/shunt_i/AWS/" data-gtm-click-label="user-tags"> AWS <span class="count">(34)</span> </a> </li> <li class="js-frequent-tag is-hidden"> <a href="/shunt_i/Angular/" data-gtm-click-label="user-tags"> Angular <span class="count">(1)</span> </a> </li> <li class="js-frequent-tag is-hidden"> <a href="/shunt_i/Arduino/" data-gtm-click-label="user-tags"> Arduino <span class="count">(1)</span> </a> </li> <li class="js-frequent-tag is-hidden"> <a href="/shunt_i/Atom/" data-gtm-click-label="user-tags"> Atom <span class="count">(4)</span> </a> </li> <li class="js-frequent-tag is-hidden"> <a href="/shunt_i/Bitbucket/" data-gtm-click-label="user-tags"> Bitbucket <span class="count">(1)</span> </a> </li> <li class="js-frequent-tag is-hidden"> <a href="/shunt_i/CG/" data-gtm-click-label="user-tags"> CG <span class="count">(1)</span> </a> </li> <li class="js-frequent-tag is-hidden"> <a href="/shunt_i/CKEditor/" data-gtm-click-label="user-tags"> CKEditor <span class="count">(1)</span> </a> </li> <li class="js-frequent-tag is-hidden"> <a href="/shunt_i/COVID-19/" data-gtm-click-label="user-tags"> COVID-19 <span class="count">(7)</span> </a> </li> <li class="js-frequent-tag is-hidden"> <a href="/shunt_i/CS/" data-gtm-click-label="user-tags"> CS <span class="count">(5)</span> </a> </li> <li class="js-frequent-tag is-hidden"> <a href="/shunt_i/CSS/" data-gtm-click-label="user-tags"> CSS <span class="count">(34)</span> </a> </li> <li class="js-frequent-tag is-hidden"> <a href="/shunt_i/CTP/" data-gtm-click-label="user-tags"> CTP <span class="count">(2)</span> </a> </li> <li class="js-frequent-tag is-hidden"> <a href="/shunt_i/CentOS/" data-gtm-click-label="user-tags"> CentOS <span class="count">(2)</span> </a> </li> <li class="js-frequent-tag is-hidden"> <a href="/shunt_i/ChatGPT/" data-gtm-click-label="user-tags"> ChatGPT <span class="count">(18)</span> </a> </li> <li class="js-frequent-tag is-hidden"> <a href="/shunt_i/Chief%20Joseph/" data-gtm-click-label="user-tags"> Chief Joseph <span class="count">(2)</span> </a> </li> <li class="js-frequent-tag is-hidden"> <a href="/shunt_i/C%E8%A8%80%E8%AA%9E/" data-gtm-click-label="user-tags"> C言語 <span class="count">(20)</span> </a> </li> <li class="js-frequent-tag is-hidden"> <a href="/shunt_i/DB/" data-gtm-click-label="user-tags"> DB <span class="count">(40)</span> </a> </li> <li class="js-frequent-tag is-hidden"> <a href="/shunt_i/DDD/" data-gtm-click-label="user-tags"> DDD <span class="count">(12)</span> </a> </li> <li class="js-frequent-tag is-hidden"> <a href="/shunt_i/DNS/" data-gtm-click-label="user-tags"> DNS <span class="count">(1)</span> </a> </li> <li class="js-frequent-tag is-hidden"> <a href="/shunt_i/DTM/" data-gtm-click-label="user-tags"> DTM <span class="count">(3)</span> </a> </li> <li class="js-frequent-tag is-hidden"> <a href="/shunt_i/DTP/" data-gtm-click-label="user-tags"> DTP <span class="count">(15)</span> </a> </li> <li class="js-frequent-tag is-hidden"> <a href="/shunt_i/DTP%E3%82%A8%E3%82%AD%E3%82%B9%E3%83%91%E3%83%BC%E3%83%88/" data-gtm-click-label="user-tags"> DTPエキスパート <span class="count">(2)</span> </a> </li> <li class="js-frequent-tag is-hidden"> <a href="/shunt_i/DeepLearning/" data-gtm-click-label="user-tags"> DeepLearning <span class="count">(3)</span> </a> </li> <li class="js-frequent-tag is-hidden"> <a href="/shunt_i/Evernote/" data-gtm-click-label="user-tags"> Evernote <span class="count">(5)</span> </a> </li> <li class="js-frequent-tag is-hidden"> <a href="/shunt_i/Excel/" data-gtm-click-label="user-tags"> Excel <span class="count">(16)</span> </a> </li> <li class="js-frequent-tag is-hidden"> <a href="/shunt_i/FX/" data-gtm-click-label="user-tags"> FX <span class="count">(2)</span> </a> </li> <li class="js-frequent-tag is-hidden"> <a href="/shunt_i/GDPR/" data-gtm-click-label="user-tags"> GDPR <span class="count">(1)</span> </a> </li> <li class="js-frequent-tag is-hidden"> <a href="/shunt_i/GraphQL/" data-gtm-click-label="user-tags"> GraphQL <span class="count">(1)</span> </a> </li> <li class="js-frequent-tag is-hidden"> <a href="/shunt_i/IT/" data-gtm-click-label="user-tags"> IT <span class="count">(12)</span> </a> </li> <li class="js-frequent-tag is-hidden"> <a href="/shunt_i/Illustrator/" data-gtm-click-label="user-tags"> Illustrator <span class="count">(12)</span> </a> </li> <li class="js-frequent-tag is-hidden"> <a href="/shunt_i/IoT/" data-gtm-click-label="user-tags"> IoT <span class="count">(5)</span> </a> </li> <li class="js-frequent-tag is-hidden"> <a href="/shunt_i/Java/" data-gtm-click-label="user-tags"> Java <span class="count">(9)</span> </a> </li> <li class="js-frequent-tag is-hidden"> <a href="/shunt_i/Jenkins/" data-gtm-click-label="user-tags"> Jenkins <span class="count">(1)</span> </a> </li> <li class="js-frequent-tag is-hidden"> <a href="/shunt_i/Kotlin/" data-gtm-click-label="user-tags"> Kotlin <span class="count">(2)</span> </a> </li> <li class="js-frequent-tag is-hidden"> <a href="/shunt_i/Laravel/" data-gtm-click-label="user-tags"> Laravel <span class="count">(11)</span> </a> </li> <li class="js-frequent-tag is-hidden"> <a href="/shunt_i/MachineLearning/" data-gtm-click-label="user-tags"> MachineLearning <span class="count">(4)</span> </a> </li> <li class="js-frequent-tag is-hidden"> <a href="/shunt_i/Makefile/" data-gtm-click-label="user-tags"> Makefile <span class="count">(1)</span> </a> </li> <li class="js-frequent-tag is-hidden"> <a href="/shunt_i/Next.js/" data-gtm-click-label="user-tags"> Next.js <span class="count">(3)</span> </a> </li> <li class="js-frequent-tag is-hidden"> <a href="/shunt_i/OAuth/" data-gtm-click-label="user-tags"> OAuth <span class="count">(3)</span> </a> </li> <li class="js-frequent-tag is-hidden"> <a href="/shunt_i/OS/" data-gtm-click-label="user-tags"> OS <span class="count">(1)</span> </a> </li> <li class="js-frequent-tag is-hidden"> <a href="/shunt_i/PC/" data-gtm-click-label="user-tags"> PC <span class="count">(29)</span> </a> </li> <li class="js-frequent-tag is-hidden"> <a href="/shunt_i/PostgreSQL/" data-gtm-click-label="user-tags"> PostgreSQL <span class="count">(4)</span> </a> </li> <li class="js-frequent-tag is-hidden"> <a href="/shunt_i/Processing/" data-gtm-click-label="user-tags"> Processing <span class="count">(1)</span> </a> </li> <li class="js-frequent-tag is-hidden"> <a href="/shunt_i/RSS/" data-gtm-click-label="user-tags"> RSS <span class="count">(1)</span> </a> </li> <li class="js-frequent-tag is-hidden"> <a href="/shunt_i/Rails/" data-gtm-click-label="user-tags"> Rails <span class="count">(1)</span> </a> </li> <li class="js-frequent-tag is-hidden"> <a href="/shunt_i/Raspberry%20Pi/" data-gtm-click-label="user-tags"> Raspberry Pi <span class="count">(9)</span> </a> </li> <li class="js-frequent-tag is-hidden"> <a href="/shunt_i/Ruby/" data-gtm-click-label="user-tags"> Ruby <span class="count">(2)</span> </a> </li> <li class="js-frequent-tag is-hidden"> <a href="/shunt_i/Rust/" data-gtm-click-label="user-tags"> Rust <span class="count">(4)</span> </a> </li> <li class="js-frequent-tag is-hidden"> <a href="/shunt_i/SEO/" data-gtm-click-label="user-tags"> SEO <span class="count">(7)</span> </a> </li> <li class="js-frequent-tag is-hidden"> <a href="/shunt_i/SNS/" data-gtm-click-label="user-tags"> SNS <span class="count">(3)</span> </a> </li> <li class="js-frequent-tag is-hidden"> <a href="/shunt_i/Scratch/" data-gtm-click-label="user-tags"> Scratch <span class="count">(1)</span> </a> </li> <li class="js-frequent-tag is-hidden"> <a href="/shunt_i/Swift/" data-gtm-click-label="user-tags"> Swift <span class="count">(6)</span> </a> </li> <li class="js-frequent-tag is-hidden"> <a href="/shunt_i/Tailwind/" data-gtm-click-label="user-tags"> Tailwind <span class="count">(7)</span> </a> </li> <li class="js-frequent-tag is-hidden"> <a href="/shunt_i/UI/" data-gtm-click-label="user-tags"> UI <span class="count">(11)</span> </a> </li> <li class="js-frequent-tag is-hidden"> <a href="/shunt_i/UNIX/" data-gtm-click-label="user-tags"> UNIX <span class="count">(11)</span> </a> </li> <li class="js-frequent-tag is-hidden"> <a href="/shunt_i/VJ/" data-gtm-click-label="user-tags"> VJ <span class="count">(1)</span> </a> </li> <li class="js-frequent-tag is-hidden"> <a href="/shunt_i/Vue/" data-gtm-click-label="user-tags"> Vue <span class="count">(10)</span> </a> </li> <li class="js-frequent-tag is-hidden"> <a href="/shunt_i/Web%E5%88%B6%E4%BD%9C/" data-gtm-click-label="user-tags"> Web制作 <span class="count">(92)</span> </a> </li> <li class="js-frequent-tag is-hidden"> <a href="/shunt_i/amazon/" data-gtm-click-label="user-tags"> amazon <span class="count">(1)</span> </a> </li> <li class="js-frequent-tag is-hidden"> <a href="/shunt_i/art/" data-gtm-click-label="user-tags"> art <span class="count">(28)</span> </a> </li> <li class="js-frequent-tag is-hidden"> <a href="/shunt_i/beacon/" data-gtm-click-label="user-tags"> beacon <span class="count">(1)</span> </a> </li> <li class="js-frequent-tag is-hidden"> <a href="/shunt_i/bootstrap/" data-gtm-click-label="user-tags"> bootstrap <span class="count">(2)</span> </a> </li> <li class="js-frequent-tag is-hidden"> <a href="/shunt_i/c++/" data-gtm-click-label="user-tags"> c++ <span class="count">(3)</span> </a> </li> <li class="js-frequent-tag is-hidden"> <a href="/shunt_i/chrome/" data-gtm-click-label="user-tags"> chrome <span class="count">(20)</span> </a> </li> <li class="js-frequent-tag is-hidden"> <a href="/shunt_i/coliss/" data-gtm-click-label="user-tags"> coliss <span class="count">(2)</span> </a> </li> <li class="js-frequent-tag is-hidden"> <a href="/shunt_i/ctf/" data-gtm-click-label="user-tags"> ctf <span class="count">(1)</span> </a> </li> <li class="js-frequent-tag is-hidden"> <a href="/shunt_i/design/" data-gtm-click-label="user-tags"> design <span class="count">(89)</span> </a> </li> <li class="js-frequent-tag is-hidden"> <a href="/shunt_i/dj/" data-gtm-click-label="user-tags"> dj <span class="count">(5)</span> </a> </li> <li class="js-frequent-tag is-hidden"> <a href="/shunt_i/docker/" data-gtm-click-label="user-tags"> docker <span class="count">(37)</span> </a> </li> <li class="js-frequent-tag is-hidden"> <a href="/shunt_i/ds-10/" data-gtm-click-label="user-tags"> ds-10 <span class="count">(2)</span> </a> </li> <li class="js-frequent-tag is-hidden"> <a href="/shunt_i/emacs/" data-gtm-click-label="user-tags"> emacs <span class="count">(1)</span> </a> </li> <li class="js-frequent-tag is-hidden"> <a href="/shunt_i/fashion/" data-gtm-click-label="user-tags"> fashion <span class="count">(47)</span> </a> </li> <li class="js-frequent-tag is-hidden"> <a href="/shunt_i/firefox/" data-gtm-click-label="user-tags"> firefox <span class="count">(8)</span> </a> </li> <li class="js-frequent-tag is-hidden"> <a href="/shunt_i/flash/" data-gtm-click-label="user-tags"> flash <span class="count">(10)</span> </a> </li> <li class="js-frequent-tag is-hidden"> <a href="/shunt_i/font/" data-gtm-click-label="user-tags"> font <span class="count">(16)</span> </a> </li> <li class="js-frequent-tag is-hidden"> <a href="/shunt_i/game/" data-gtm-click-label="user-tags"> game <span class="count">(31)</span> </a> </li> <li class="js-frequent-tag is-hidden"> <a href="/shunt_i/git/" data-gtm-click-label="user-tags"> git <span class="count">(38)</span> </a> </li> <li class="js-frequent-tag is-hidden"> <a href="/shunt_i/github/" data-gtm-click-label="user-tags"> github <span class="count">(11)</span> </a> </li> <li class="js-frequent-tag is-hidden"> <a href="/shunt_i/golang/" data-gtm-click-label="user-tags"> golang <span class="count">(14)</span> </a> </li> <li class="js-frequent-tag is-hidden"> <a href="/shunt_i/google/" data-gtm-click-label="user-tags"> google <span class="count">(6)</span> </a> </li> <li class="js-frequent-tag is-hidden"> <a href="/shunt_i/google%20analytics/" data-gtm-click-label="user-tags"> google analytics <span class="count">(5)</span> </a> </li> <li class="js-frequent-tag is-hidden"> <a href="/shunt_i/house/" data-gtm-click-label="user-tags"> house <span class="count">(4)</span> </a> </li> <li class="js-frequent-tag is-hidden"> <a href="/shunt_i/html/" data-gtm-click-label="user-tags"> html <span class="count">(11)</span> </a> </li> <li class="js-frequent-tag is-hidden"> <a href="/shunt_i/iPhone%E3%82%A2%E3%83%97%E3%83%AA%E9%96%8B%E7%99%BA/" data-gtm-click-label="user-tags"> iPhoneアプリ開発 <span class="count">(43)</span> </a> </li> <li class="js-frequent-tag is-hidden"> <a href="/shunt_i/image/" data-gtm-click-label="user-tags"> image <span class="count">(3)</span> </a> </li> <li class="js-frequent-tag is-hidden"> <a href="/shunt_i/iphone/" data-gtm-click-label="user-tags"> iphone <span class="count">(19)</span> </a> </li> <li class="js-frequent-tag is-hidden"> <a href="/shunt_i/javascript/" data-gtm-click-label="user-tags"> javascript <span class="count">(27)</span> </a> </li> <li class="js-frequent-tag is-hidden"> <a href="/shunt_i/kubernetes/" data-gtm-click-label="user-tags"> kubernetes <span class="count">(7)</span> </a> </li> <li class="js-frequent-tag is-hidden"> <a href="/shunt_i/linux/" data-gtm-click-label="user-tags"> linux <span class="count">(11)</span> </a> </li> <li class="js-frequent-tag is-hidden"> <a href="/shunt_i/mac/" data-gtm-click-label="user-tags"> mac <span class="count">(59)</span> </a> </li> <li class="js-frequent-tag is-hidden"> <a href="/shunt_i/music/" data-gtm-click-label="user-tags"> music <span class="count">(124)</span> </a> </li> <li class="js-frequent-tag is-hidden"> <a href="/shunt_i/mysql/" data-gtm-click-label="user-tags"> mysql <span class="count">(5)</span> </a> </li> <li class="js-frequent-tag is-hidden"> <a href="/shunt_i/news/" data-gtm-click-label="user-tags"> news <span class="count">(7)</span> </a> </li> <li class="js-frequent-tag is-hidden"> <a href="/shunt_i/nginx/" data-gtm-click-label="user-tags"> nginx <span class="count">(4)</span> </a> </li> <li class="js-frequent-tag is-hidden"> <a href="/shunt_i/notion/" data-gtm-click-label="user-tags"> notion <span class="count">(2)</span> </a> </li> <li class="js-frequent-tag is-hidden"> <a href="/shunt_i/obsidian/" data-gtm-click-label="user-tags"> obsidian <span class="count">(3)</span> </a> </li> <li class="js-frequent-tag is-hidden"> <a href="/shunt_i/pdf/" data-gtm-click-label="user-tags"> pdf <span class="count">(5)</span> </a> </li> <li class="js-frequent-tag is-hidden"> <a href="/shunt_i/perl/" data-gtm-click-label="user-tags"> perl <span class="count">(1)</span> </a> </li> <li class="js-frequent-tag is-hidden"> <a href="/shunt_i/photoshop/" data-gtm-click-label="user-tags"> photoshop <span class="count">(25)</span> </a> </li> <li class="js-frequent-tag is-hidden"> <a href="/shunt_i/php/" data-gtm-click-label="user-tags"> php <span class="count">(20)</span> </a> </li> <li class="js-frequent-tag is-hidden"> <a href="/shunt_i/podcast/" data-gtm-click-label="user-tags"> podcast <span class="count">(4)</span> </a> </li> <li class="js-frequent-tag is-hidden"> <a href="/shunt_i/prompt/" data-gtm-click-label="user-tags"> prompt <span class="count">(1)</span> </a> </li> <li class="js-frequent-tag is-hidden"> <a href="/shunt_i/python/" data-gtm-click-label="user-tags"> python <span class="count">(11)</span> </a> </li> <li class="js-frequent-tag is-hidden"> <a href="/shunt_i/react/" data-gtm-click-label="user-tags"> react <span class="count">(10)</span> </a> </li> <li class="js-frequent-tag is-hidden"> <a href="/shunt_i/scheme/" data-gtm-click-label="user-tags"> scheme <span class="count">(1)</span> </a> </li> <li class="js-frequent-tag is-hidden"> <a href="/shunt_i/server/" data-gtm-click-label="user-tags"> server <span class="count">(11)</span> </a> </li> <li class="js-frequent-tag is-hidden"> <a href="/shunt_i/shell/" class="is-current" data-gtm-click-label="user-tags"> shell <span class="count">(17)</span> </a> </li> <li class="js-frequent-tag is-hidden"> <a href="/shunt_i/slack/" data-gtm-click-label="user-tags"> slack <span class="count">(2)</span> </a> </li> <li class="js-frequent-tag is-hidden"> <a href="/shunt_i/software/" data-gtm-click-label="user-tags"> software <span class="count">(4)</span> </a> </li> <li class="js-frequent-tag is-hidden"> <a href="/shunt_i/sql/" data-gtm-click-label="user-tags"> sql <span class="count">(14)</span> </a> </li> <li class="js-frequent-tag is-hidden"> <a href="/shunt_i/terraform/" data-gtm-click-label="user-tags"> terraform <span class="count">(1)</span> </a> </li> <li class="js-frequent-tag is-hidden"> <a href="/shunt_i/threejs/" data-gtm-click-label="user-tags"> threejs <span class="count">(1)</span> </a> </li> <li class="js-frequent-tag is-hidden"> <a href="/shunt_i/thunderbird/" data-gtm-click-label="user-tags"> thunderbird <span class="count">(2)</span> </a> </li> <li class="js-frequent-tag is-hidden"> <a href="/shunt_i/unity/" data-gtm-click-label="user-tags"> unity <span class="count">(2)</span> </a> </li> <li class="js-frequent-tag is-hidden"> <a href="/shunt_i/vagrant/" data-gtm-click-label="user-tags"> vagrant <span class="count">(3)</span> </a> </li> <li class="js-frequent-tag is-hidden"> <a href="/shunt_i/vba/" data-gtm-click-label="user-tags"> vba <span class="count">(1)</span> </a> </li> <li class="js-frequent-tag is-hidden"> <a href="/shunt_i/vim/" data-gtm-click-label="user-tags"> vim <span class="count">(11)</span> </a> </li> <li class="js-frequent-tag is-hidden"> <a href="/shunt_i/visual%20studio/" data-gtm-click-label="user-tags"> visual studio <span class="count">(1)</span> </a> </li> <li class="js-frequent-tag is-hidden"> <a href="/shunt_i/vscode/" data-gtm-click-label="user-tags"> vscode <span class="count">(26)</span> </a> </li> <li class="js-frequent-tag is-hidden"> <a href="/shunt_i/webdesign/" data-gtm-click-label="user-tags"> webdesign <span class="count">(48)</span> </a> </li> <li class="js-frequent-tag is-hidden"> <a href="/shunt_i/web%E3%82%B5%E3%83%BC%E3%83%93%E3%82%B9/" data-gtm-click-label="user-tags"> webサービス <span class="count">(242)</span> </a> </li> <li class="js-frequent-tag is-hidden"> <a href="/shunt_i/web%E3%83%97%E3%83%AD%E3%82%B8%E3%82%A7%E3%82%AF%E3%83%88%E7%94%A8/" data-gtm-click-label="user-tags"> webプロジェクト用 <span class="count">(13)</span> </a> </li> <li class="js-frequent-tag is-hidden"> <a href="/shunt_i/windows/" data-gtm-click-label="user-tags"> windows <span class="count">(10)</span> </a> </li> <li class="js-frequent-tag is-hidden"> <a href="/shunt_i/windows7/" data-gtm-click-label="user-tags"> windows7 <span class="count">(1)</span> </a> </li> <li class="js-frequent-tag is-hidden"> <a href="/shunt_i/word/" data-gtm-click-label="user-tags"> word <span class="count">(1)</span> </a> </li> <li class="js-frequent-tag is-hidden"> <a href="/shunt_i/wordpress/" data-gtm-click-label="user-tags"> wordpress <span class="count">(3)</span> </a> </li> <li class="js-frequent-tag is-hidden"> <a href="/shunt_i/xamarin/" data-gtm-click-label="user-tags"> xamarin <span class="count">(4)</span> </a> </li> <li class="js-frequent-tag is-hidden"> <a href="/shunt_i/youtube/" data-gtm-click-label="user-tags"> youtube <span class="count">(27)</span> </a> </li> <li class="js-frequent-tag is-hidden"> <a href="/shunt_i/zsh/" data-gtm-click-label="user-tags"> zsh <span class="count">(2)</span> </a> </li> <li class="js-frequent-tag is-hidden"> <a href="/shunt_i/%E3%81%82%E3%81%A8%E3%81%A7%E3%82%84%E3%82%8B/" data-gtm-click-label="user-tags"> あとでやる <span class="count">(12)</span> </a> </li> <li class="js-frequent-tag is-hidden"> <a href="/shunt_i/%E3%81%82%E3%81%A8%E3%81%A7%E8%AA%AD%E3%82%80/" data-gtm-click-label="user-tags"> あとで読む <span class="count">(268)</span> </a> </li> <li class="js-frequent-tag is-hidden"> <a href="/shunt_i/%E3%81%84%E3%81%84%E8%A9%B1/" data-gtm-click-label="user-tags"> いい話 <span class="count">(3)</span> </a> </li> <li class="js-frequent-tag is-hidden"> <a href="/shunt_i/%E3%81%8A%E9%87%91/" data-gtm-click-label="user-tags"> お金 <span class="count">(8)</span> </a> </li> <li class="js-frequent-tag is-hidden"> <a href="/shunt_i/%E3%81%93%E3%82%8C%E3%81%AF%E3%81%99%E3%81%94%E3%81%84/" data-gtm-click-label="user-tags"> これはすごい <span class="count">(12)</span> </a> </li> <li class="js-frequent-tag is-hidden"> <a href="/shunt_i/%E3%81%AF%E3%81%A6%E3%81%AA/" data-gtm-click-label="user-tags"> はてな <span class="count">(4)</span> </a> </li> <li class="js-frequent-tag is-hidden"> <a href="/shunt_i/%E3%81%BE%E3%81%A8%E3%82%81/" data-gtm-click-label="user-tags"> まとめ <span class="count">(93)</span> </a> </li> <li class="js-frequent-tag is-hidden"> <a href="/shunt_i/%E3%82%86%E3%81%8B%E3%81%97/" data-gtm-click-label="user-tags"> ゆかし <span class="count">(1)</span> </a> </li> <li class="js-frequent-tag is-hidden"> <a href="/shunt_i/%E3%82%A2%E3%82%A4%E3%83%87%E3%82%A3%E3%82%A2%E2%80%BB/" data-gtm-click-label="user-tags"> アイディア※ <span class="count">(3)</span> </a> </li> <li class="js-frequent-tag is-hidden"> <a href="/shunt_i/%E3%82%A2%E3%82%A6%E3%83%88%E3%83%89%E3%82%A2/" data-gtm-click-label="user-tags"> アウトドア <span class="count">(1)</span> </a> </li> <li class="js-frequent-tag is-hidden"> <a href="/shunt_i/%E3%82%A2%E3%82%A6%E3%83%88%E3%83%89%E3%82%A2%E7%94%A8%E5%93%81/" data-gtm-click-label="user-tags"> アウトドア用品 <span class="count">(3)</span> </a> </li> <li class="js-frequent-tag is-hidden"> <a href="/shunt_i/%E3%82%A2%E3%82%AF%E3%82%A2%E3%83%AA%E3%82%A6%E3%83%A0/" data-gtm-click-label="user-tags"> アクアリウム <span class="count">(2)</span> </a> </li> <li class="js-frequent-tag is-hidden"> <a href="/shunt_i/%E3%82%A2%E3%82%BB%E3%83%B3%E3%83%96%E3%83%AA/" data-gtm-click-label="user-tags"> アセンブリ <span class="count">(3)</span> </a> </li> <li class="js-frequent-tag is-hidden"> <a href="/shunt_i/%E3%82%A2%E3%83%8B%E3%83%A1/" data-gtm-click-label="user-tags"> アニメ <span class="count">(11)</span> </a> </li> <li class="js-frequent-tag is-hidden"> <a href="/shunt_i/%E3%82%A2%E3%83%95%E3%82%A3%E3%83%AA%E3%82%A8%E3%82%A4%E3%83%88/" data-gtm-click-label="user-tags"> アフィリエイト <span class="count">(6)</span> </a> </li> <li class="js-frequent-tag is-hidden"> <a href="/shunt_i/%E3%82%A2%E3%83%97%E3%83%AA/" data-gtm-click-label="user-tags"> アプリ <span class="count">(25)</span> </a> </li> <li class="js-frequent-tag is-hidden"> <a href="/shunt_i/%E3%82%A2%E3%83%97%E3%83%AA%E9%96%8B%E7%99%BA/" data-gtm-click-label="user-tags"> アプリ開発 <span class="count">(3)</span> </a> </li> <li class="js-frequent-tag is-hidden"> <a href="/shunt_i/%E3%82%A2%E3%83%AB%E3%82%B4%E3%83%AA%E3%82%BA%E3%83%A0/" data-gtm-click-label="user-tags"> アルゴリズム <span class="count">(21)</span> </a> </li> <li class="js-frequent-tag is-hidden"> <a href="/shunt_i/%E3%82%A4%E3%83%99%E3%83%B3%E3%83%88/" data-gtm-click-label="user-tags"> イベント <span class="count">(1)</span> </a> </li> <li class="js-frequent-tag is-hidden"> <a href="/shunt_i/%E3%82%A4%E3%83%B3%E3%83%86%E3%83%AA%E3%82%A2/" data-gtm-click-label="user-tags"> インテリア <span class="count">(16)</span> </a> </li> <li class="js-frequent-tag is-hidden"> <a href="/shunt_i/%E3%82%A4%E3%83%B3%E3%83%95%E3%83%A9/" data-gtm-click-label="user-tags"> インフラ <span class="count">(7)</span> </a> </li> <li class="js-frequent-tag is-hidden"> <a href="/shunt_i/%E3%82%A8%E3%83%B3%E3%82%B8%E3%83%8B%E3%82%A2/" data-gtm-click-label="user-tags"> エンジニア <span class="count">(32)</span> </a> </li> <li class="js-frequent-tag is-hidden"> <a href="/shunt_i/%E3%82%A8%E3%83%B3%E3%82%BF%E3%83%A1/" data-gtm-click-label="user-tags"> エンタメ <span class="count">(1)</span> </a> </li> <li class="js-frequent-tag is-hidden"> <a href="/shunt_i/%E3%82%AC%E3%82%B8%E3%82%A7%E3%83%83%E3%83%88/" data-gtm-click-label="user-tags"> ガジェット <span class="count">(14)</span> </a> </li> <li class="js-frequent-tag is-hidden"> <a href="/shunt_i/%E3%82%AC%E3%83%B3%E3%83%80%E3%83%A0/" data-gtm-click-label="user-tags"> ガンダム <span class="count">(2)</span> </a> </li> <li class="js-frequent-tag is-hidden"> <a href="/shunt_i/%E3%82%AD%E3%83%A3%E3%83%AA%E3%82%A2/" data-gtm-click-label="user-tags"> キャリア <span class="count">(5)</span> </a> </li> <li class="js-frequent-tag is-hidden"> <a href="/shunt_i/%E3%82%AD%E3%83%BC%E3%83%9C%E3%83%BC%E3%83%89/" data-gtm-click-label="user-tags"> キーボード <span class="count">(4)</span> </a> </li> <li class="js-frequent-tag is-hidden"> <a href="/shunt_i/%E3%82%AF%E3%83%AC%E3%82%B8%E3%83%83%E3%83%88%E3%82%AB%E3%83%BC%E3%83%89/" data-gtm-click-label="user-tags"> クレジットカード <span class="count">(1)</span> </a> </li> <li class="js-frequent-tag is-hidden"> <a href="/shunt_i/%E3%82%B2%E3%83%BC%E3%83%A0/" data-gtm-click-label="user-tags"> ゲーム <span class="count">(1)</span> </a> </li> <li class="js-frequent-tag is-hidden"> <a href="/shunt_i/%E3%82%B3%E3%83%9F%E3%83%A5%E3%83%8B%E3%82%B1%E3%83%BC%E3%82%B7%E3%83%A7%E3%83%B3/" data-gtm-click-label="user-tags"> コミュニケーション <span class="count">(10)</span> </a> </li> <li class="js-frequent-tag is-hidden"> <a href="/shunt_i/%E3%82%B5%E3%83%BC%E3%83%93%E3%82%B9/" data-gtm-click-label="user-tags"> サービス <span class="count">(1)</span> </a> </li> <li class="js-frequent-tag is-hidden"> <a href="/shunt_i/%E3%82%B5%E3%83%BC%E3%83%93%E3%82%B9%E9%81%8B%E7%94%A8/" data-gtm-click-label="user-tags"> サービス運用 <span class="count">(1)</span> </a> </li> <li class="js-frequent-tag is-hidden"> <a href="/shunt_i/%E3%82%B8%E3%83%A0/" data-gtm-click-label="user-tags"> ジム <span class="count">(4)</span> </a> </li> <li class="js-frequent-tag is-hidden"> <a href="/shunt_i/%E3%82%B9%E3%82%BF%E3%83%BC%E3%82%A6%E3%82%A9%E3%83%BC%E3%82%BA/" data-gtm-click-label="user-tags"> スターウォーズ <span class="count">(1)</span> </a> </li> <li class="js-frequent-tag is-hidden"> <a href="/shunt_i/%E3%82%B9%E3%83%97%E3%83%AC%E3%83%83%E3%83%89%E3%82%B7%E3%83%BC%E3%83%88/" data-gtm-click-label="user-tags"> スプレッドシート <span class="count">(1)</span> </a> </li> <li class="js-frequent-tag is-hidden"> <a href="/shunt_i/%E3%82%BB%E3%82%AD%E3%83%A5%E3%83%AA%E3%83%86%E3%82%A3/" data-gtm-click-label="user-tags"> セキュリティ <span class="count">(33)</span> </a> </li> <li class="js-frequent-tag is-hidden"> <a href="/shunt_i/%E3%82%BD%E3%83%95%E3%83%88%E3%82%A6%E3%82%A7%E3%82%A2/" data-gtm-click-label="user-tags"> ソフトウェア <span class="count">(1)</span> </a> </li> <li class="js-frequent-tag is-hidden"> <a href="/shunt_i/%E3%82%BF%E3%82%B9%E3%82%AF%E7%AE%A1%E7%90%86/" data-gtm-click-label="user-tags"> タスク管理 <span class="count">(1)</span> </a> </li> <li class="js-frequent-tag is-hidden"> <a href="/shunt_i/%E3%83%81%E3%83%A5%E3%83%BC%E3%83%88%E3%83%AA%E3%82%A2%E3%83%AB/" data-gtm-click-label="user-tags"> チュートリアル <span class="count">(35)</span> </a> </li> <li class="js-frequent-tag is-hidden"> <a href="/shunt_i/%E3%83%84%E3%83%BC%E3%83%AB/" data-gtm-click-label="user-tags"> ツール <span class="count">(25)</span> </a> </li> <li class="js-frequent-tag is-hidden"> <a href="/shunt_i/%E3%83%86%E3%82%B9%E3%83%88/" data-gtm-click-label="user-tags"> テスト <span class="count">(4)</span> </a> </li> <li class="js-frequent-tag is-hidden"> <a href="/shunt_i/%E3%83%86%E3%83%AC%E3%83%93/" data-gtm-click-label="user-tags"> テレビ <span class="count">(4)</span> </a> </li> <li class="js-frequent-tag is-hidden"> <a href="/shunt_i/%E3%83%87%E3%82%B6%E3%82%A4%E3%83%B3%E3%83%91%E3%82%BF%E3%83%BC%E3%83%B3/" data-gtm-click-label="user-tags"> デザインパターン <span class="count">(1)</span> </a> </li> <li class="js-frequent-tag is-hidden"> <a href="/shunt_i/%E3%83%87%E3%83%BC%E3%82%BF%E3%83%99%E3%83%BC%E3%82%B9/" data-gtm-click-label="user-tags"> データベース <span class="count">(6)</span> </a> </li> <li class="js-frequent-tag is-hidden"> <a href="/shunt_i/%E3%83%88%E3%83%A9%E3%83%B3%E3%83%97/" data-gtm-click-label="user-tags"> トランプ <span class="count">(1)</span> </a> </li> <li class="js-frequent-tag is-hidden"> <a href="/shunt_i/%E3%83%88%E3%83%AC%E3%83%BC%E3%83%8B%E3%83%B3%E3%82%B0/" data-gtm-click-label="user-tags"> トレーニング <span class="count">(36)</span> </a> </li> <li class="js-frequent-tag is-hidden"> <a href="/shunt_i/%E3%83%8D%E3%82%BF/" data-gtm-click-label="user-tags"> ネタ <span class="count">(23)</span> </a> </li> <li class="js-frequent-tag is-hidden"> <a href="/shunt_i/%E3%83%8D%E3%83%83%E3%83%88%E3%83%AF%E3%83%BC%E3%82%AF/" data-gtm-click-label="user-tags"> ネットワーク <span class="count">(22)</span> </a> </li> <li class="js-frequent-tag is-hidden"> <a href="/shunt_i/%E3%83%93%E3%82%B8%E3%83%8D%E3%82%B9/" data-gtm-click-label="user-tags"> ビジネス <span class="count">(14)</span> </a> </li> <li class="js-frequent-tag is-hidden"> <a href="/shunt_i/%E3%83%95%E3%82%A1%E3%82%A4%E3%83%AB%E9%80%81%E4%BF%A1/" data-gtm-click-label="user-tags"> ファイル送信 <span class="count">(1)</span> </a> </li> <li class="js-frequent-tag is-hidden"> <a href="/shunt_i/%E3%83%95%E3%82%A9%E3%83%BC%E3%83%A0/" data-gtm-click-label="user-tags"> フォーム <span class="count">(3)</span> </a> </li> <li class="js-frequent-tag is-hidden"> <a href="/shunt_i/%E3%83%95%E3%83%AA%E3%83%BC%E3%83%A9%E3%83%B3%E3%82%B9/" data-gtm-click-label="user-tags"> フリーランス <span class="count">(1)</span> </a> </li> <li class="js-frequent-tag is-hidden"> <a href="/shunt_i/%E3%83%95%E3%83%AC%E3%83%BC%E3%83%A0%E3%83%AF%E3%83%BC%E3%82%AF/" data-gtm-click-label="user-tags"> フレームワーク <span class="count">(1)</span> </a> </li> <li class="js-frequent-tag is-hidden"> <a href="/shunt_i/%E3%83%95%E3%83%AD%E3%83%B3%E3%83%88%E3%82%A8%E3%83%B3%E3%83%89/" data-gtm-click-label="user-tags"> フロントエンド <span class="count">(1)</span> </a> </li> <li class="js-frequent-tag is-hidden"> <a href="/shunt_i/%E3%83%96%E3%83%A9%E3%82%B7/" data-gtm-click-label="user-tags"> ブラシ <span class="count">(1)</span> </a> </li> <li class="js-frequent-tag is-hidden"> <a href="/shunt_i/%E3%83%96%E3%83%AD%E3%82%B0/" data-gtm-click-label="user-tags"> ブログ <span class="count">(2)</span> </a> </li> <li class="js-frequent-tag is-hidden"> <a href="/shunt_i/%E3%83%97%E3%83%AC%E3%82%BC%E3%83%B3/" data-gtm-click-label="user-tags"> プレゼン <span class="count">(2)</span> </a> </li> <li class="js-frequent-tag is-hidden"> <a href="/shunt_i/%E3%83%97%E3%83%AC%E3%82%BC%E3%83%B3%E3%83%88/" data-gtm-click-label="user-tags"> プレゼント <span class="count">(9)</span> </a> </li> <li class="js-frequent-tag is-hidden"> <a href="/shunt_i/%E3%83%97%E3%83%AD%E3%82%B0%E3%83%A9%E3%83%9F%E3%83%B3%E3%82%B0/" data-gtm-click-label="user-tags"> プログラミング <span class="count">(144)</span> </a> </li> <li class="js-frequent-tag is-hidden"> <a href="/shunt_i/%E3%83%9E%E3%83%8D%E3%82%B8%E3%83%A1%E3%83%B3%E3%83%88/" data-gtm-click-label="user-tags"> マネジメント <span class="count">(1)</span> </a> </li> <li class="js-frequent-tag is-hidden"> <a href="/shunt_i/%E3%83%9E%E3%83%BC%E3%82%B1%E3%83%86%E3%82%A3%E3%83%B3%E3%82%B0/" data-gtm-click-label="user-tags"> マーケティング <span class="count">(4)</span> </a> </li> <li class="js-frequent-tag is-hidden"> <a href="/shunt_i/%E3%83%A1%E3%83%BC%E3%83%AB/" data-gtm-click-label="user-tags"> メール <span class="count">(2)</span> </a> </li> <li class="js-frequent-tag is-hidden"> <a href="/shunt_i/%E3%83%A9%E3%82%A4%E3%83%95%E3%82%B9%E3%82%BF%E3%82%A4%E3%83%AB/" data-gtm-click-label="user-tags"> ライフスタイル <span class="count">(7)</span> </a> </li> <li class="js-frequent-tag is-hidden"> <a href="/shunt_i/%E3%83%AA%E3%83%83%E3%82%AF%E3%83%87%E3%82%A3%E3%82%A2%E3%82%B9/" data-gtm-click-label="user-tags"> リックディアス <span class="count">(1)</span> </a> </li> <li class="js-frequent-tag is-hidden"> <a href="/shunt_i/%E3%83%AA%E3%83%A2%E3%83%BC%E3%83%88%E3%83%AF%E3%83%BC%E3%82%AF/" data-gtm-click-label="user-tags"> リモートワーク <span class="count">(3)</span> </a> </li> <li class="js-frequent-tag is-hidden"> <a href="/shunt_i/%E3%83%AC%E3%82%BF%E3%83%83%E3%83%81/" data-gtm-click-label="user-tags"> レタッチ <span class="count">(2)</span> </a> </li> <li class="js-frequent-tag is-hidden"> <a href="/shunt_i/%E3%83%AD%E3%83%9C%E3%83%83%E3%83%88/" data-gtm-click-label="user-tags"> ロボット <span class="count">(1)</span> </a> </li> <li class="js-frequent-tag is-hidden"> <a href="/shunt_i/%E3%83%AF%E3%83%BC%E3%82%AD%E3%83%B3%E3%82%B0%EF%BC%9A%E5%B1%95%E7%A4%BA%E4%BC%9A/" data-gtm-click-label="user-tags"> ワーキング:展示会 <span class="count">(3)</span> </a> </li> <li class="js-frequent-tag is-hidden"> <a href="/shunt_i/%E4%B8%8D%E5%8B%95%E7%94%A3/" data-gtm-click-label="user-tags"> 不動産 <span class="count">(4)</span> </a> </li> <li class="js-frequent-tag is-hidden"> <a href="/shunt_i/%E4%BA%8B%E4%BB%B6/" data-gtm-click-label="user-tags"> 事件 <span class="count">(3)</span> </a> </li> <li class="js-frequent-tag is-hidden"> <a href="/shunt_i/%E4%BB%95%E4%BA%8B/" data-gtm-click-label="user-tags"> 仕事 <span class="count">(131)</span> </a> </li> <li class="js-frequent-tag is-hidden"> <a href="/shunt_i/%E4%BC%9A%E7%A4%BE/" data-gtm-click-label="user-tags"> 会社 <span class="count">(39)</span> </a> </li> <li class="js-frequent-tag is-hidden"> <a href="/shunt_i/%E4%BE%BF%E5%88%A9/" data-gtm-click-label="user-tags"> 便利 <span class="count">(18)</span> </a> </li> <li class="js-frequent-tag is-hidden"> <a href="/shunt_i/%E4%BF%9D%E9%99%BA/" data-gtm-click-label="user-tags"> 保険 <span class="count">(2)</span> </a> </li> <li class="js-frequent-tag is-hidden"> <a href="/shunt_i/%E5%81%A5%E5%BA%B7/" data-gtm-click-label="user-tags"> 健康 <span class="count">(52)</span> </a> </li> <li class="js-frequent-tag is-hidden"> <a href="/shunt_i/%E5%86%8D%E5%88%A9%E7%94%A8/" data-gtm-click-label="user-tags"> 再利用 <span class="count">(1)</span> </a> </li> <li class="js-frequent-tag is-hidden"> <a href="/shunt_i/%E5%86%99%E7%9C%9F/" data-gtm-click-label="user-tags"> 写真 <span class="count">(17)</span> </a> </li> <li class="js-frequent-tag is-hidden"> <a href="/shunt_i/%E5%89%AF%E6%A5%AD/" data-gtm-click-label="user-tags"> 副業 <span class="count">(1)</span> </a> </li> <li class="js-frequent-tag is-hidden"> <a href="/shunt_i/%E5%8A%B9%E6%9E%9C/" data-gtm-click-label="user-tags"> 効果 <span class="count">(1)</span> </a> </li> <li class="js-frequent-tag is-hidden"> <a href="/shunt_i/%E5%8B%89%E5%BC%B7/" data-gtm-click-label="user-tags"> 勉強 <span class="count">(38)</span> </a> </li> <li class="js-frequent-tag is-hidden"> <a href="/shunt_i/%E5%8B%95%E7%94%BB/" data-gtm-click-label="user-tags"> 動画 <span class="count">(38)</span> </a> </li> <li class="js-frequent-tag is-hidden"> <a href="/shunt_i/%E5%8D%B0%E5%88%B7/" data-gtm-click-label="user-tags"> 印刷 <span class="count">(5)</span> </a> </li> <li class="js-frequent-tag is-hidden"> <a href="/shunt_i/%E5%8D%B0%E5%88%B7%E4%BC%9A%E7%A4%BE/" data-gtm-click-label="user-tags"> 印刷会社 <span class="count">(3)</span> </a> </li> <li class="js-frequent-tag is-hidden"> <a href="/shunt_i/%E5%90%8D%E5%88%BA/" data-gtm-click-label="user-tags"> 名刺 <span class="count">(2)</span> </a> </li> <li class="js-frequent-tag is-hidden"> <a href="/shunt_i/%E5%95%86%E7%94%A8%E5%8F%AF/" data-gtm-click-label="user-tags"> 商用可 <span class="count">(1)</span> </a> </li> <li class="js-frequent-tag is-hidden"> <a href="/shunt_i/%E5%9C%B0%E5%9B%B3/" data-gtm-click-label="user-tags"> 地図 <span class="count">(5)</span> </a> </li> <li class="js-frequent-tag is-hidden"> <a href="/shunt_i/%E5%9C%B0%E5%9F%9F%E6%83%85%E5%A0%B1/" data-gtm-click-label="user-tags"> 地域情報 <span class="count">(1)</span> </a> </li> <li class="js-frequent-tag is-hidden"> <a href="/shunt_i/%E5%AD%90%E4%BE%9B/" data-gtm-click-label="user-tags"> 子供 <span class="count">(27)</span> </a> </li> <li class="js-frequent-tag is-hidden"> <a href="/shunt_i/%E5%AE%87%E5%AE%99/" data-gtm-click-label="user-tags"> 宇宙 <span class="count">(1)</span> </a> </li> <li class="js-frequent-tag is-hidden"> <a href="/shunt_i/%E5%AE%AE%E5%B4%8E%E9%A7%BF/" data-gtm-click-label="user-tags"> 宮崎駿 <span class="count">(2)</span> </a> </li> <li class="js-frequent-tag is-hidden"> <a href="/shunt_i/%E5%AE%B6%E5%85%B7/" data-gtm-click-label="user-tags"> 家具 <span class="count">(2)</span> </a> </li> <li class="js-frequent-tag is-hidden"> <a href="/shunt_i/%E5%AE%B6%E6%97%8F/" data-gtm-click-label="user-tags"> 家族 <span class="count">(4)</span> </a> </li> <li class="js-frequent-tag is-hidden"> <a href="/shunt_i/%E5%AE%B6%E9%9B%BB/" data-gtm-click-label="user-tags"> 家電 <span class="count">(2)</span> </a> </li> <li class="js-frequent-tag is-hidden"> <a href="/shunt_i/%E5%AF%8C%E9%87%8E%E7%94%B1%E6%82%A0%E5%AD%A3/" data-gtm-click-label="user-tags"> 富野由悠季 <span class="count">(1)</span> </a> </li> <li class="js-frequent-tag is-hidden"> <a href="/shunt_i/%E5%B0%B1%E8%81%B7/" data-gtm-click-label="user-tags"> 就職 <span class="count">(19)</span> </a> </li> <li class="js-frequent-tag is-hidden"> <a href="/shunt_i/%E5%B7%A5%E4%BD%9C/" data-gtm-click-label="user-tags"> 工作 <span class="count">(2)</span> </a> </li> <li class="js-frequent-tag is-hidden"> <a href="/shunt_i/%E5%BA%83%E5%91%8A/" data-gtm-click-label="user-tags"> 広告 <span class="count">(4)</span> </a> </li> <li class="js-frequent-tag is-hidden"> <a href="/shunt_i/%E5%BA%97/" data-gtm-click-label="user-tags"> 店 <span class="count">(1)</span> </a> </li> <li class="js-frequent-tag is-hidden"> <a href="/shunt_i/%E5%BB%BA%E7%AF%89/" data-gtm-click-label="user-tags"> 建築 <span class="count">(1)</span> </a> </li> <li class="js-frequent-tag is-hidden"> <a href="/shunt_i/%E5%BC%95%E8%B6%8A%E3%81%97/" data-gtm-click-label="user-tags"> 引越し <span class="count">(1)</span> </a> </li> <li class="js-frequent-tag is-hidden"> <a href="/shunt_i/%E6%81%8B%E6%84%9B/" data-gtm-click-label="user-tags"> 恋愛 <span class="count">(2)</span> </a> </li> <li class="js-frequent-tag is-hidden"> <a href="/shunt_i/%E6%88%A6%E4%BA%89/" data-gtm-click-label="user-tags"> 戦争 <span class="count">(2)</span> </a> </li> <li class="js-frequent-tag is-hidden"> <a href="/shunt_i/%E6%8A%95%E8%B3%87/" data-gtm-click-label="user-tags"> 投資 <span class="count">(13)</span> </a> </li> <li class="js-frequent-tag is-hidden"> <a href="/shunt_i/%E6%90%BA%E5%B8%AF/" data-gtm-click-label="user-tags"> 携帯 <span class="count">(1)</span> </a> </li> <li class="js-frequent-tag is-hidden"> <a href="/shunt_i/%E6%94%BE%E5%B0%84%E8%83%BD%E6%B1%9A%E6%9F%93/" data-gtm-click-label="user-tags"> 放射能汚染 <span class="count">(1)</span> </a> </li> <li class="js-frequent-tag is-hidden"> <a href="/shunt_i/%E6%94%BF%E6%B2%BB/" data-gtm-click-label="user-tags"> 政治 <span class="count">(2)</span> </a> </li> <li class="js-frequent-tag is-hidden"> <a href="/shunt_i/%E6%95%99%E8%82%B2/" data-gtm-click-label="user-tags"> 教育 <span class="count">(35)</span> </a> </li> <li class="js-frequent-tag is-hidden"> <a href="/shunt_i/%E6%95%B0%E5%AD%A6/" data-gtm-click-label="user-tags"> 数学 <span class="count">(7)</span> </a> </li> <li class="js-frequent-tag is-hidden"> <a href="/shunt_i/%E6%96%99%E7%90%86/" data-gtm-click-label="user-tags"> 料理 <span class="count">(64)</span> </a> </li> <li class="js-frequent-tag is-hidden"> <a href="/shunt_i/%E6%96%B0%E5%9E%8B%E3%82%B3%E3%83%AD%E3%83%8A%E3%82%A6%E3%82%A4%E3%83%AB%E3%82%B9/" data-gtm-click-label="user-tags"> 新型コロナウイルス <span class="count">(1)</span> </a> </li> <li class="js-frequent-tag is-hidden"> <a href="/shunt_i/%E6%98%A0%E7%94%BB/" data-gtm-click-label="user-tags"> 映画 <span class="count">(27)</span> </a> </li> <li class="js-frequent-tag is-hidden"> <a href="/shunt_i/%E6%9C%AC/" data-gtm-click-label="user-tags"> 本 <span class="count">(33)</span> </a> </li> <li class="js-frequent-tag is-hidden"> <a href="/shunt_i/%E6%9D%B1%E5%8C%97%E5%9C%B0%E6%96%B9%E5%A4%AA%E5%B9%B3%E6%B4%8B%E6%B2%96%E5%9C%B0%E9%9C%87/" data-gtm-click-label="user-tags"> 東北地方太平洋沖地震 <span class="count">(3)</span> </a> </li> <li class="js-frequent-tag is-hidden"> <a href="/shunt_i/%E6%A4%9C%E7%B4%A2/" data-gtm-click-label="user-tags"> 検索 <span class="count">(4)</span> </a> </li> <li class="js-frequent-tag is-hidden"> <a href="/shunt_i/%E6%A9%9F%E6%A2%B0%E5%AD%A6%E7%BF%92/" data-gtm-click-label="user-tags"> 機械学習 <span class="count">(14)</span> </a> </li> <li class="js-frequent-tag is-hidden"> <a href="/shunt_i/%E6%A9%9F%E8%83%BD%E6%8B%A1%E5%BC%B5/" data-gtm-click-label="user-tags"> 機能拡張 <span class="count">(4)</span> </a> </li> <li class="js-frequent-tag is-hidden"> <a href="/shunt_i/%E6%AC%B2%E3%81%97%E3%81%84%E3%82%82%E3%81%AE/" data-gtm-click-label="user-tags"> 欲しいもの <span class="count">(23)</span> </a> </li> <li class="js-frequent-tag is-hidden"> <a href="/shunt_i/%E6%AD%A3%E8%A6%8F%E8%A1%A8%E7%8F%BE/" data-gtm-click-label="user-tags"> 正規表現 <span class="count">(1)</span> </a> </li> <li class="js-frequent-tag is-hidden"> <a href="/shunt_i/%E6%AD%B4%E5%8F%B2/" data-gtm-click-label="user-tags"> 歴史 <span class="count">(8)</span> </a> </li> <li class="js-frequent-tag is-hidden"> <a href="/shunt_i/%E6%BC%AB%E7%94%BB/" data-gtm-click-label="user-tags"> 漫画 <span class="count">(31)</span> </a> </li> <li class="js-frequent-tag is-hidden"> <a href="/shunt_i/%E7%81%BD%E5%AE%B3/" data-gtm-click-label="user-tags"> 災害 <span class="count">(1)</span> </a> </li> <li class="js-frequent-tag is-hidden"> <a href="/shunt_i/%E7%8F%8D%E3%82%B9%E3%83%9D/" data-gtm-click-label="user-tags"> 珍スポ <span class="count">(3)</span> </a> </li> <li class="js-frequent-tag is-hidden"> <a href="/shunt_i/%E7%94%9F%E6%B4%BB/" data-gtm-click-label="user-tags"> 生活 <span class="count">(118)</span> </a> </li> <li class="js-frequent-tag is-hidden"> <a href="/shunt_i/%E7%94%BB%E5%83%8F/" data-gtm-click-label="user-tags"> 画像 <span class="count">(21)</span> </a> </li> <li class="js-frequent-tag is-hidden"> <a href="/shunt_i/%E7%94%BB%E5%83%8F%E7%94%9F%E6%88%90/" data-gtm-click-label="user-tags"> 画像生成 <span class="count">(10)</span> </a> </li> <li class="js-frequent-tag is-hidden"> <a href="/shunt_i/%E7%9D%A1%E7%9C%A0/" data-gtm-click-label="user-tags"> 睡眠 <span class="count">(2)</span> </a> </li> <li class="js-frequent-tag is-hidden"> <a href="/shunt_i/%E7%A4%BE%E4%BC%9A/" data-gtm-click-label="user-tags"> 社会 <span class="count">(28)</span> </a> </li> <li class="js-frequent-tag is-hidden"> <a href="/shunt_i/%E7%A7%91%E5%AD%A6/" data-gtm-click-label="user-tags"> 科学 <span class="count">(3)</span> </a> </li> <li class="js-frequent-tag is-hidden"> <a href="/shunt_i/%E7%A8%8E%E9%87%91/" data-gtm-click-label="user-tags"> 税金 <span class="count">(1)</span> </a> </li> <li class="js-frequent-tag is-hidden"> <a href="/shunt_i/%E7%AB%B6%E3%83%97%E3%83%AD/" data-gtm-click-label="user-tags"> 競プロ <span class="count">(1)</span> </a> </li> <li class="js-frequent-tag is-hidden"> <a href="/shunt_i/%E7%B4%A0%E6%9D%90/" data-gtm-click-label="user-tags"> 素材 <span class="count">(12)</span> </a> </li> <li class="js-frequent-tag is-hidden"> <a href="/shunt_i/%E7%B5%8C%E5%96%B6/" data-gtm-click-label="user-tags"> 経営 <span class="count">(10)</span> </a> </li> <li class="js-frequent-tag is-hidden"> <a href="/shunt_i/%E7%B5%8C%E6%B8%88/" data-gtm-click-label="user-tags"> 経済 <span class="count">(10)</span> </a> </li> <li class="js-frequent-tag is-hidden"> <a href="/shunt_i/%E7%B5%B1%E8%A8%88/" data-gtm-click-label="user-tags"> 統計 <span class="count">(2)</span> </a> </li> <li class="js-frequent-tag is-hidden"> <a href="/shunt_i/%E7%B5%B5/" data-gtm-click-label="user-tags"> 絵 <span class="count">(1)</span> </a> </li> <li class="js-frequent-tag is-hidden"> <a href="/shunt_i/%E7%BE%8E%E5%AE%B9/" data-gtm-click-label="user-tags"> 美容 <span class="count">(6)</span> </a> </li> <li class="js-frequent-tag is-hidden"> <a href="/shunt_i/%E8%80%83%E3%81%88%E6%96%B9/" data-gtm-click-label="user-tags"> 考え方 <span class="count">(27)</span> </a> </li> <li class="js-frequent-tag is-hidden"> <a href="/shunt_i/%E8%84%B3/" data-gtm-click-label="user-tags"> 脳 <span class="count">(1)</span> </a> </li> <li class="js-frequent-tag is-hidden"> <a href="/shunt_i/%E8%87%AA%E4%BD%9CPC/" data-gtm-click-label="user-tags"> 自作PC <span class="count">(1)</span> </a> </li> <li class="js-frequent-tag is-hidden"> <a href="/shunt_i/%E8%87%AA%E8%BB%A2%E8%BB%8A/" data-gtm-click-label="user-tags"> 自転車 <span class="count">(8)</span> </a> </li> <li class="js-frequent-tag is-hidden"> <a href="/shunt_i/%E8%8B%B1%E8%AA%9E/" data-gtm-click-label="user-tags"> 英語 <span class="count">(41)</span> </a> </li> <li class="js-frequent-tag is-hidden"> <a href="/shunt_i/%E8%A6%B3%E5%85%89/" data-gtm-click-label="user-tags"> 観光 <span class="count">(44)</span> </a> </li> <li class="js-frequent-tag is-hidden"> <a href="/shunt_i/%E8%A8%80%E8%91%89/" data-gtm-click-label="user-tags"> 言葉 <span class="count">(5)</span> </a> </li> <li class="js-frequent-tag is-hidden"> <a href="/shunt_i/%E8%A8%AD%E8%A8%88/" data-gtm-click-label="user-tags"> 設計 <span class="count">(41)</span> </a> </li> <li class="js-frequent-tag is-hidden"> <a href="/shunt_i/%E8%AA%AD%E3%81%BF%E7%89%A9/" data-gtm-click-label="user-tags"> 読み物 <span class="count">(46)</span> </a> </li> <li class="js-frequent-tag is-hidden"> <a href="/shunt_i/%E8%B3%87%E6%96%99/" data-gtm-click-label="user-tags"> 資料 <span class="count">(7)</span> </a> </li> <li class="js-frequent-tag is-hidden"> <a href="/shunt_i/%E8%B3%87%E6%A0%BC/" data-gtm-click-label="user-tags"> 資格 <span class="count">(3)</span> </a> </li> <li class="js-frequent-tag is-hidden"> <a href="/shunt_i/%E8%B5%B7%E6%A5%AD/" data-gtm-click-label="user-tags"> 起業 <span class="count">(12)</span> </a> </li> <li class="js-frequent-tag is-hidden"> <a href="/shunt_i/%E8%BB%8A/" data-gtm-click-label="user-tags"> 車 <span class="count">(4)</span> </a> </li> <li class="js-frequent-tag is-hidden"> <a href="/shunt_i/%E8%BB%A2%E8%81%B7/" data-gtm-click-label="user-tags"> 転職 <span class="count">(14)</span> </a> </li> <li class="js-frequent-tag is-hidden"> <a href="/shunt_i/%E8%BC%B8%E5%85%A5%E6%A5%AD/" data-gtm-click-label="user-tags"> 輸入業 <span class="count">(6)</span> </a> </li> <li class="js-frequent-tag is-hidden"> <a href="/shunt_i/%E9%96%8B%E7%99%BA/" data-gtm-click-label="user-tags"> 開発 <span class="count">(207)</span> </a> </li> <li class="js-frequent-tag is-hidden"> <a href="/shunt_i/%E9%96%8B%E7%99%BA%E7%92%B0%E5%A2%83/" data-gtm-click-label="user-tags"> 開発環境 <span class="count">(6)</span> </a> </li> <li class="js-frequent-tag is-hidden"> <a href="/shunt_i/%E9%9A%9C%E5%AE%B3/" data-gtm-click-label="user-tags"> 障害 <span class="count">(2)</span> </a> </li> <li class="js-frequent-tag is-hidden"> <a href="/shunt_i/%E9%9B%91%E5%AD%A6/" data-gtm-click-label="user-tags"> 雑学 <span class="count">(1)</span> </a> </li> <li class="js-frequent-tag is-hidden"> <a href="/shunt_i/%E9%9B%91%E8%B2%A8/" data-gtm-click-label="user-tags"> 雑貨 <span class="count">(6)</span> </a> </li> <li class="js-frequent-tag is-hidden"> <a href="/shunt_i/%E9%9B%BB%E5%AD%90%E5%B7%A5%E4%BD%9C/" data-gtm-click-label="user-tags"> 電子工作 <span class="count">(2)</span> </a> </li> <li class="js-frequent-tag is-hidden"> <a href="/shunt_i/%E9%9B%BB%E5%AD%90%E6%9B%B8%E7%B1%8D/" data-gtm-click-label="user-tags"> 電子書籍 <span class="count">(12)</span> </a> </li> <li class="js-frequent-tag is-hidden"> <a href="/shunt_i/%E9%9F%B3%E6%A5%BD/" data-gtm-click-label="user-tags"> 音楽 <span class="count">(1)</span> </a> </li> <li class="js-frequent-tag is-hidden"> <a href="/shunt_i/%E9%A3%B2%E3%81%BF%E4%BC%9A/" data-gtm-click-label="user-tags"> 飲み会 <span class="count">(2)</span> </a> </li> <li class="js-frequent-tag is-hidden"> <a href="/shunt_i/%E9%A3%B2%E9%A3%9F%E5%BA%97/" data-gtm-click-label="user-tags"> 飲食店 <span class="count">(13)</span> </a> </li> <li class="js-frequent-tag is-hidden"> <a href="/shunt_i/%E9%AB%98%E6%A0%A1%E9%87%8E%E7%90%83/" data-gtm-click-label="user-tags"> 高校野球 <span class="count">(1)</span> </a> </li> <li class="js-most-frequent-tag"> <a href="/shunt_i/%E3%81%82%E3%81%A8%E3%81%A7%E8%AA%AD%E3%82%80/" data-gtm-click-label="user-tags"> あとで読む <span class="count">(268)</span> </a> </li> <li class="js-most-frequent-tag"> <a href="/shunt_i/web%E3%82%B5%E3%83%BC%E3%83%93%E3%82%B9/" data-gtm-click-label="user-tags"> webサービス <span class="count">(242)</span> </a> </li> <li class="js-most-frequent-tag"> <a href="/shunt_i/%E9%96%8B%E7%99%BA/" data-gtm-click-label="user-tags"> 開発 <span class="count">(207)</span> </a> </li> <li class="js-most-frequent-tag"> <a href="/shunt_i/%E3%83%97%E3%83%AD%E3%82%B0%E3%83%A9%E3%83%9F%E3%83%B3%E3%82%B0/" data-gtm-click-label="user-tags"> プログラミング <span class="count">(144)</span> </a> </li> <li class="js-most-frequent-tag"> <a href="/shunt_i/%E4%BB%95%E4%BA%8B/" data-gtm-click-label="user-tags"> 仕事 <span class="count">(131)</span> </a> </li> <li class="js-most-frequent-tag"> <a href="/shunt_i/music/" data-gtm-click-label="user-tags"> music <span class="count">(124)</span> </a> </li> <li class="js-most-frequent-tag"> <a href="/shunt_i/%E7%94%9F%E6%B4%BB/" data-gtm-click-label="user-tags"> 生活 <span class="count">(118)</span> </a> </li> <li class="js-most-frequent-tag"> <a href="/shunt_i/%E3%81%BE%E3%81%A8%E3%82%81/" data-gtm-click-label="user-tags"> まとめ <span class="count">(93)</span> </a> </li> <li class="js-most-frequent-tag"> <a href="/shunt_i/Web%E5%88%B6%E4%BD%9C/" data-gtm-click-label="user-tags"> Web制作 <span class="count">(92)</span> </a> </li> <li class="js-most-frequent-tag"> <a href="/shunt_i/design/" data-gtm-click-label="user-tags"> design <span class="count">(89)</span> </a> </li> </ul> <p class="centerarticle-sub-navi-more"> <button type="button" class="js-display-all-tags" data-gtm-click-label="user-tags-show-all">タグをすべて表示</button> </p> </div> <div class="centerarticle-sidebar-menu"> <h3 class="centerarticle-aside-title">関連タグで絞り込む (7)</h3> <ul class="centerarticle-sub-navi"> <li> <a href="/shunt_i/shell/linux/" > linux </a> </li> <li> <a href="/shunt_i/shell/mac/" > mac </a> </li> <li> <a href="/shunt_i/shell/UNIX/" > UNIX </a> </li> <li> <a href="/shunt_i/shell/zsh/" > zsh </a> </li> <li> <a href="/shunt_i/shell/%E3%81%82%E3%81%A8%E3%81%A7%E3%82%84%E3%82%8B/" > あとでやる </a> </li> <li> <a href="/shunt_i/shell/%E3%81%82%E3%81%A8%E3%81%A7%E8%AA%AD%E3%82%80/" > あとで読む </a> </li> <li> <a href="/shunt_i/shell/%E3%83%97%E3%83%AD%E3%82%B0%E3%83%A9%E3%83%9F%E3%83%B3%E3%82%B0/" > プログラミング </a> </li> </ul> <p class="centerarticle-sub-navi-more"> <a href="/shunt_i/bookmark">タグの絞り込みを解除</a> </p> </div> </div> <div class="center-container"> <div class="centerarticle-title-container"> <h2 class="centerarticle-title"> shellに関するshunt_iのブックマーク (17) </h2> </div> <div > <script type="text/x-template" id="template-short-url-click"> {{#tweet_url}} <a href="{{tweet_url}}" target="_blank" rel="noopener noreferrer" data-gtm-click-label="reaction-twitter-clicks"><span>{{count}} clicks</span></a> {{/tweet_url}} {{^tweet_url}} <span>{{count}} clicks</span> {{/tweet_url}} </script> <script type="text/x-template" id="template-bookmark-item"> {{^is_wiped}} <li class="bookmark-item js-user-bookmark-item js-intent-share-bookmark" data-target-url="{{url}}"> <div class="centerarticle-entry {{#has_image}}is-image-entry-unit{{/has_image}}"> <h3 class="centerarticle-entry-title"> <a href="{{url}}" class="js-clickable-link js-keyboard-openable" target="_blank" rel="noopener{{#noreferrer}} noreferrer{{/noreferrer}}" data-gtm-click-label="user-bookmark-title"><img class="centerarticle-entry-favicon" src="{{favicon_url}}" alt="">{{title}}</a> </h3> <ul class="centerarticle-entry-data"> <li> <span class="centerarticle-users"> <a href="{{page_url}}" class="js-keyboard-entry-page-openable" title="{{title}} ({{total_bookmarks}}ブックマーク)" data-gtm-click-label="user-bookmark-users">{{total_bookmarks_with_user_postfix}}</a> </span> </li> <li> <a href="/shunt_i/{{url_query}}" title="『{{root_title}}』の新着エントリー" data-gtm-click-label="user-bookmark-domain"> {{root_title}} </a> </li> {{#is_categorized}} <li><a href="{{category_path}}" data-gtm-click-label="user-bookmark-category">{{category_title}}</a></li> {{/is_categorized}} </ul> <div class="centerarticle-entry-contents"> <p class="centerarticle-entry-summary">{{{summary_with_keyword_links}}}</p> {{#has_image}} <a href="{{canonical_url}}" class="centerarticle-entry-image" target="_blank" rel="noopener{{#noreferrer}} noreferrer{{/noreferrer}}" data-gtm-click-label="user-bookmark-thumb"> <img src="{{image_url}}" alt="{{title}}"> </a> {{/has_image}} </div> </div> <div class="centerarticle-reaction js-user-bookmark-id-container" id="bookmark-{{location_id}}"> <div class="centerarticle-reaction-comment js-user-bookmark-comment {{badge_icon}}" data-url="{{url}}" data-user-name="{{author_name}}"> <a href="{{top_page_path}}" data-gtm-click-label="user-reaction-usericon" class="centerarticle-reaction-thumb"> <img src="{{profile_icon_url}}" alt="{{author_name}}" title="{{author_name}}" class="centerarticle-reaction-image"> </a> <div class="centerarticle-reaction-main"> <span class="centerarticle-reaction-username"><a href="{{anchor_url}}" class="js-anchor-path" data-gtm-click-label="user-reaction-username">{{author_name}}</a></span> <span class="centerarticle-reaction-timestamp">{{created}}</span> <span class="js-private-icon status {{#is_public}}is-hidden{{/is_public}}"><img src="/images/v4/public/userpage/icon-private.svg" alt="非公開" width="10px" height="10px"></span> <div class="centerarticle-reaction-main-comment-tags"> <span class="js-comment">{{{comment_expanded}}}</span> <ul class="centerarticle-reaction-tags js-tag-text"> {{#tags}} <li><a href="/{{author_name}}/{{escaped_label}}/" data-gtm-click-label="user-reaction-tag">{{label}}</a></li> {{/tags}} </ul> </div> <div class="centerarticle-reaction-foot"> <div class="centerarticle-reaction-meta"> <span class="{{#is_bookmark}}comment-permalink{{/is_bookmark}}{{^is_bookmark}}original-permalink{{/is_bookmark}} js-comment-permalink"> <a href="{{comment_page_path}}" data-gtm-click-label="user-reaction-permalink" rel="{{#should_nofollow}}nofollow{{/should_nofollow}}">{{#is_bookmark}}リスト{{/is_bookmark}}{{^is_bookmark}}リンク{{/is_bookmark}}</a> </span> <span class="list-star-container js-list-star-container"></span> <span class="twitter-click js-short-url-clicks"></span> </div> <ul class="centerarticle-reaction-menu"> <li class="js-add-star-container add-star-container"></li> </ul> </div> </div> </div> </div> <ul class="centerarticle-reaction-following js-user-following-bookmarks-icon"> {{#following_bookmarks}} <li> <a href="{{anchor_url}}" class="following-bookmark-link" data-gtm-click-label="user-bookmark-following-bookmarker-icon"> <img src="{{profile_icon_url}}" alt="{{author_name}}" class="following-bookmark-icon" > </a> <span class="following-bookmark-popup"> <span class="following-bookmark-username">{{author_name}}</span><span class="following-bookmark-timestamp">{{created}}</span> <span class="following-bookmark-text"> {{ #comment }}<span class="following-bookmark-comment">{{ comment }}</span>{{ /comment }} <ul class="following-bookmark-tags"> {{ #tags }}<li>{{ label }}</li>{{ /tags }} </ul> </span> </span> </li> {{/following_bookmarks}} {{#following_bookmarks.length}} <li class="centerarticle-reaction-following-more"><button type="button" class="js-show-all-following-bookmarks" data-gtm-click-label="user-bookmark-showall-following-bookmarks">すべて表示</button></li> {{/following_bookmarks.length}} </ul> <div class="js-user-following-bookmarks-detail is-hidden"> {{#following_bookmarks}} <div class="centerarticle-reaction-comment js-user-bookmark-comment {{badge_icon}}" data-url="{{url}}" data-user-name="{{author_name}}"> <a href="{{top_page_path}}" data-gtm-click-label="user-reaction-usericon" class="centerarticle-reaction-thumb"> <img src="{{profile_icon_url}}" alt="{{author_name}}" title="{{author_name}}" class="centerarticle-reaction-image"> </a> <div class="centerarticle-reaction-main"> <span class="centerarticle-reaction-username"><a href="{{anchor_url}}" class="js-anchor-path" data-gtm-click-label="user-reaction-username">{{author_name}}</a></span> <span class="centerarticle-reaction-timestamp">{{created}}</span> <span class="js-private-icon status {{#is_public}}is-hidden{{/is_public}}"><img src="/images/v4/public/userpage/icon-private.svg" alt="非公開" width="10px" height="10px"></span> <div class="centerarticle-reaction-main-comment-tags"> <span class="js-comment">{{{comment_expanded}}}</span> <ul class="centerarticle-reaction-tags js-tag-text"> {{#tags}} <li><a href="/{{author_name}}/{{escaped_label}}/" data-gtm-click-label="user-reaction-tag">{{label}}</a></li> {{/tags}} </ul> </div> <div class="centerarticle-reaction-foot"> <div class="centerarticle-reaction-meta"> <span class="{{#is_bookmark}}comment-permalink{{/is_bookmark}}{{^is_bookmark}}original-permalink{{/is_bookmark}} js-comment-permalink"> <a href="{{comment_page_path}}" data-gtm-click-label="user-reaction-permalink" rel="{{#should_nofollow}}nofollow{{/should_nofollow}}">{{#is_bookmark}}リスト{{/is_bookmark}}{{^is_bookmark}}リンク{{/is_bookmark}}</a> </span> <span class="list-star-container js-list-star-container"></span> <span class="twitter-click js-short-url-clicks"></span> </div> <ul class="centerarticle-reaction-menu"> <li class="js-add-star-container add-star-container"></li> </ul> </div> </div> </div> {{/following_bookmarks}} </div> </li> {{/is_wiped}} </script> <script type="text/x-template" id="template-following-bookmarker-icon"> <li> <a href="{{anchor_url}}" class="following-bookmark-link" data-gtm-click-label="user-bookmark-following-bookmarker-icon"> <img src="{{profile_icon_url}}" alt="{{author_name}}" class="following-bookmark-icon" > </a> <span class="following-bookmark-popup"> <span class="following-bookmark-username">{{author_name}}</span><span class="following-bookmark-timestamp">{{created}}</span> <span class="following-bookmark-text"> {{ #comment }}<span class="following-bookmark-comment">{{ comment }}</span>{{ /comment }} <ul class="following-bookmark-tags"> {{ #tags }}<li>{{ label }}</li>{{ /tags }} </ul> </span> </span> </li> </script> <script type="text/x-template" id="template-bookmark-item-editor"> <div class="centerarticle-entry {{#has_image}}is-image-entry-unit{{/has_image}}"> <h3 class="centerarticle-entry-title"> <a href="{{url}}" class="js-clickable-link js-keyboard-openable" target="_blank" rel="noopener{{#noreferrer}} noreferrer{{/noreferrer}}" data-gtm-click-label="user-bookmark-title"><img class="centerarticle-entry-favicon" src="{{favicon_url}}" alt="">{{title}}</a> </h3> <ul class="centerarticle-entry-data"> <li> <span class="centerarticle-users"> <a href="{{page_url}}" class="js-keyboard-entry-page-openable" title="{{title}} ({{total_bookmarks}}ブックマーク)" data-gtm-click-label="user-bookmark-users">{{total_bookmarks_with_user_postfix}}</a> </span> </li> <li> <a href="/shunt_i/{{url_query}}" title="『{{root_title}}』の新着エントリー" data-gtm-click-label="user-bookmark-domain"> {{root_title}} </a> </li> {{#is_categorized}} <li><a href="{{category_path}}" data-gtm-click-label="user-bookmark-category">{{category_title}}</a></li> {{/is_categorized}} </ul> <div class="centerarticle-entry-contents"> <p class="centerarticle-entry-summary">{{{summary_with_keyword_links}}}</p> {{#has_image}} <a href="{{canonical_url}}" class="centerarticle-entry-image" target="_blank" rel="noopener{{#noreferrer}} noreferrer{{/noreferrer}}" data-gtm-click-label="user-bookmark-thumb"> <img src="{{image_url}}" alt="{{title}}"> </a> {{/has_image}} </div> </div> </script> <script type="text/x-template" id="template-bookmark-pager"> <li> <div class="centerarticle-pager"> <span class="centerarticle-waiting js-read-more-waiting is-hidden"><img src="https://b.st-hatena.com/21bb37de101e3d895eac61554a1ca07012b63961/images/v4/public/common/loading@2x.gif" alt="残りのブックマークを読み込んでいます" width="16" height="16" /></span> {{#previous}} <a href="{{page_path}}">{{label}}</a> {{/previous}} {{#pages}} {{#page_path}} <span><a href="{{page_path}}">{{label}}</a></span> {{/page_path}} {{^page_path}} <span>{{label}}</span> {{/page_path}} {{/pages}} {{#next}} <a href="{{page_path}}">{{label}}</a> {{/next}} </div> </li> </script> <ul class="js-user-bookmark-item-list js-keyboard-controllable-container"> <li class="bookmark-item js-user-bookmark-item js-intent-share-bookmark" data-target-url="https://thinkit.co.jp/article/37893"> <div class="centerarticle-entry is-image-entry-unit"> <h3 class="centerarticle-entry-title"> <a href="https://thinkit.co.jp/article/37893" class="js-clickable-link js-keyboard-openable" target="_blank" rel="noopener" data-gtm-click-label="user-bookmark-title"><img class="centerarticle-entry-favicon" src="https://cdn-ak2.favicon.st-hatena.com/64?url=https%3A%2F%2Fthinkit.co.jp%2Farticle%2F37893" alt="">「Bash」をカスタマイズして、Linuxをより便利に使いこなそう</a> </h3> <ul class="centerarticle-entry-data"> <li> <span class="centerarticle-users"> <a href="/entry/s/thinkit.co.jp/article/37893" class="js-keyboard-entry-page-openable" title="「Bash」をカスタマイズして、Linuxをより便利に使いこなそう (263ブックマーク)" data-gtm-click-label="user-bookmark-users">263 users</a> </span> </li> <li> <a href="/shunt_i/?url=https%3A%2F%2Fthinkit.co.jp%2F" title="『thinkit.co.jp』の新着エントリー" data-gtm-click-label="user-bookmark-domain"> thinkit.co.jp </a> </li> <li><a href="/hotentry/it" data-gtm-click-label="user-bookmark-category">テクノロジー</a></li> </ul> <div class="centerarticle-entry-contents"> <p class="centerarticle-entry-summary">第7回の今回は、Bashの仕組みを解説し、履歴管理やプロンプトをカスタマイズしてCLI環境を向上する方法を解説します。 はじめに どのようなアプリにも、個人用の設定というものが存在します。例えば、Webブラウザは<a data-gtm-click-label="entry-summary-keyword" href="/q/%E3%83%95%E3%82%A9%E3%83%B3%E3%83%88">フォント</a>やカラーテーマ、タブの細かい挙動などを個人の好みに応じてカスタマイズできます。<a data-gtm-click-label="entry-summary-keyword" href="/q/Linux">Linux</a>で使われる様々なツールもこうした例に漏れず、非常に柔軟なカスタマイズや機能拡張が可能です。有名なテキストエディタである<a data-gtm-click-label="entry-summary-keyword" href="/q/vim">Vim</a>や<a data-gtm-click-label="entry-summary-keyword" href="/q/EM">Em</a>acsなどがその代表格で、そのカスタマイズの柔軟さと奥の深さは、想像を絶するものがあります*1。 *1: <a data-gtm-click-label="entry-summary-keyword" href="/q/EM">Em</a>acsは一見テキストエディタのように見えますが、その実体は<a data-gtm-click-label="entry-summary-keyword" href="/q/EM">Em</a>acs Lisp言語の実行環境です。<a data-gtm-click-label="entry-summary-keyword" href="/q/EM">Em</a>acs Lisp言語で実装可能なあらゆる機能をエディタ上で実行できるため、無限の拡張性を持っています。そして<a data-gtm-click-label="entry-summary-keyword" href="/q/Linux">Linux</a>を使いはじめたばかりのユーザーは</p> <a href="https://thinkit.co.jp/article/37893" class="centerarticle-entry-image" target="_blank" rel="noopener" data-gtm-click-label="user-bookmark-thumb"> <img src="https://cdn-ak-scissors.b.st-hatena.com/image/square/3f1869758dd4f12e745f7f59253491d6583b52ea/height=288;version=1;width=512/https%3A%2F%2Fthinkit.co.jp%2Fsites%2Fdefault%2Ffiles%2Fmain_images%2Fren_wsl2_vtj_cover2_5.png" alt="「Bash」をカスタマイズして、Linuxをより便利に使いこなそう"> </a> </div> </div> <div class="centerarticle-reaction js-user-bookmark-id-container" id="bookmark-4765876983064918433"> <div class="centerarticle-reaction-comment js-user-bookmark-comment " data-url="https://thinkit.co.jp/article/37893" data-user-name="shunt_i"> <a href="/shunt_i/" data-gtm-click-label="user-reaction-usericon" class="centerarticle-reaction-thumb"> <img src="https://cdn.profile-image.st-hatena.com/users/shunt_i/profile.png" alt="shunt_i" title="shunt_i" class="centerarticle-reaction-image"> </a> <div class="centerarticle-reaction-main"> <span class="centerarticle-reaction-username"><a href="https://b.hatena.ne.jp/shunt_i/20250207#bookmark-4765876983064918433" class="js-anchor-path" data-gtm-click-label="user-reaction-username">shunt_i</a></span> <span class="centerarticle-reaction-timestamp">2025/02/07</span> <span class="js-private-icon status is-hidden"><img src="/images/v4/public/userpage/icon-private.svg" alt="非公開" width="10px" height="10px"></span> <div class="centerarticle-reaction-main-comment-tags"> <span class="js-comment"></span> <ul class="centerarticle-reaction-tags js-tag-text"> <li><a href="/shunt_i/shell/" data-gtm-click-label="user-reaction-tag">shell</a></li> <li><a href="/shunt_i/%E3%81%82%E3%81%A8%E3%81%A7%E8%AA%AD%E3%82%80/" data-gtm-click-label="user-reaction-tag">あとで読む</a></li> </ul> </div> <div class="centerarticle-reaction-foot"> <div class="centerarticle-reaction-meta"> <span class="comment-permalink js-comment-permalink"> <a href="/entry/4765876983064918433/comment/shunt_i" data-gtm-click-label="user-reaction-permalink" rel="nofollow">リンク</a> </span> <span class="list-star-container js-list-star-container"></span> <span class="twitter-click js-short-url-clicks"></span> </div> <ul class="centerarticle-reaction-menu"> <li class="js-add-star-container add-star-container"></li> </ul> </div> </div> </div> </div> <ul class="centerarticle-reaction-following js-user-following-bookmarks-icon"> </ul> <div class="js-user-following-bookmarks-detail is-hidden"> </div> </li> <li class="bookmark-item js-user-bookmark-item js-intent-share-bookmark" data-target-url="https://qiita.com/osw_nuco/items/a5d7173c1e443030875f"> <div class="centerarticle-entry is-image-entry-unit"> <h3 class="centerarticle-entry-title"> <a href="https://qiita.com/osw_nuco/items/a5d7173c1e443030875f" class="js-clickable-link js-keyboard-openable" target="_blank" rel="noopener" data-gtm-click-label="user-bookmark-title"><img class="centerarticle-entry-favicon" src="https://cdn-ak2.favicon.st-hatena.com/64?url=https%3A%2F%2Fqiita.com%2Fosw_nuco%2Fitems%2Fa5d7173c1e443030875f" alt="">【永久保存版】シェルスクリプト完全攻略ガイド - Qiita</a> </h3> <ul class="centerarticle-entry-data"> <li> <span class="centerarticle-users"> <a href="/entry/s/qiita.com/osw_nuco/items/a5d7173c1e443030875f" class="js-keyboard-entry-page-openable" title="【永久保存版】シェルスクリプト完全攻略ガイド - Qiita (379ブックマーク)" data-gtm-click-label="user-bookmark-users">379 users</a> </span> </li> <li> <a href="/shunt_i/?url=https%3A%2F%2Fqiita.com%2Fosw_nuco" title="『qiita.com/osw_nuco』の新着エントリー" data-gtm-click-label="user-bookmark-domain"> qiita.com/osw_nuco </a> </li> <li><a href="/hotentry/it" data-gtm-click-label="user-bookmark-category">テクノロジー</a></li> </ul> <div class="centerarticle-entry-contents"> <p class="centerarticle-entry-summary">弊社Nucoでは、他にも様々なお役立ち記事を公開しています。よかったら、Organizationのページも覗いてみてください。 また、Nucoでは一緒に働く仲間も募集しています!興味をお持ちいただける方は、こちらまで。 シェルスクリプトの世界へようこそ! シェルスクリプトって何? シェルスクリプトは普段 Bash などのシェルで実行しているコマンドを並べて、まとめて実行できるようにしたものです。ファイルのバックアップ、ログファイルの解析、システムのセットアップなど、ターミナルで行っていた一連の作業をまとめてシェルスクリプトに記述することで、シェルスクリプトを実行するだけで自動的に一連の作業を終わらせることができるようになります。また、シェルスクリプトはファイルに保存することになるため、再利用するのも簡単になります。 シェルスクリプトで使うコマンドの多くは UNIX コマンドになると思います</p> <a href="https://qiita.com/osw_nuco/items/a5d7173c1e443030875f" class="centerarticle-entry-image" target="_blank" rel="noopener" data-gtm-click-label="user-bookmark-thumb"> <img src="https://cdn-ak-scissors.b.st-hatena.com/image/square/60b96b9f2fc4a1fb9e02f325d957d084669583da/height=288;version=1;width=512/https%3A%2F%2Fqiita-user-contents.imgix.net%2Fhttps%253A%252F%252Fcdn.qiita.com%252Fassets%252Fpublic%252Fadvent-calendar-ogp-background-7940cd1c8db80a7ec40711d90f43539e.jpg%3Fixlib%3Drb-4.0.0%26w%3D1200%26mark64%3DaHR0cHM6Ly9xaWl0YS11c2VyLWNvbnRlbnRzLmltZ2l4Lm5ldC9-dGV4dD9peGxpYj1yYi00LjAuMCZ3PTk3MiZoPTM3OCZ0eHQ9JUUzJTgwJTkwJUU2JUIwJUI4JUU0JUI5JTg1JUU0JUJGJTlEJUU1JUFEJTk4JUU3JTg5JTg4JUUzJTgwJTkxJUUzJTgyJUI3JUUzJTgyJUE3JUUzJTgzJUFCJUUzJTgyJUI5JUUzJTgyJUFGJUUzJTgzJUFBJUUzJTgzJTk3JUUzJTgzJTg4JUU1JUFFJThDJUU1JTg1JUE4JUU2JTk0JUJCJUU3JTk1JUE1JUUzJTgyJUFDJUUzJTgyJUE0JUUzJTgzJTg5JnR4dC1hbGlnbj1sZWZ0JTJDdG9wJnR4dC1jb2xvcj0lMjMzQTNDM0MmdHh0LWZvbnQ9SGlyYWdpbm8lMjBTYW5zJTIwVzYmdHh0LXNpemU9NTYmcz0wNzZhMTBmNzQ1NDBkNjRiNzE1MjI3Y2YxMTJiMWQ0Yg%26mark-x%3D120%26mark-y%3D96%26blend64%3DaHR0cHM6Ly9xaWl0YS11c2VyLWNvbnRlbnRzLmltZ2l4Lm5ldC9-dGV4dD9peGxpYj1yYi00LjAuMCZoPTc2Jnc9OTcyJnR4dD0lNDBvc3dfbnVjbyZ0eHQtY29sb3I9JTIzM0EzQzNDJnR4dC1mb250PUhpcmFnaW5vJTIwU2FucyUyMFc2JnR4dC1zaXplPTM2JnR4dC1hbGlnbj1sZWZ0JTJDdG9wJnM9NzFlNDcyYTc1OGExMWY5YTNlZGY0YzUzZGIxNTEyZmM%26blend-x%3D120%26blend-y%3D445%26blend-mode%3Dnormal%26txt64%3DaW4g5qCq5byP5Lya56S-TnVjbw%26txt-width%3D972%26txt-clip%3Dend%252Cellipsis%26txt-color%3D%25233A3C3C%26txt-font%3DHiragino%2520Sans%2520W6%26txt-size%3D36%26txt-x%3D134%26txt-y%3D546%26s%3D479ce3fcc63c856ae12a6dcb9fa8ae32" alt="【永久保存版】シェルスクリプト完全攻略ガイド - Qiita"> </a> </div> </div> <div class="centerarticle-reaction js-user-bookmark-id-container" id="bookmark-4746227858854610927"> <div class="centerarticle-reaction-comment js-user-bookmark-comment " data-url="https://qiita.com/osw_nuco/items/a5d7173c1e443030875f" data-user-name="shunt_i"> <a href="/shunt_i/" data-gtm-click-label="user-reaction-usericon" class="centerarticle-reaction-thumb"> <img src="https://cdn.profile-image.st-hatena.com/users/shunt_i/profile.png" alt="shunt_i" title="shunt_i" class="centerarticle-reaction-image"> </a> <div class="centerarticle-reaction-main"> <span class="centerarticle-reaction-username"><a href="https://b.hatena.ne.jp/shunt_i/20231212#bookmark-4746227858854610927" class="js-anchor-path" data-gtm-click-label="user-reaction-username">shunt_i</a></span> <span class="centerarticle-reaction-timestamp">2023/12/12</span> <span class="js-private-icon status is-hidden"><img src="/images/v4/public/userpage/icon-private.svg" alt="非公開" width="10px" height="10px"></span> <div class="centerarticle-reaction-main-comment-tags"> <span class="js-comment"></span> <ul class="centerarticle-reaction-tags js-tag-text"> <li><a href="/shunt_i/shell/" data-gtm-click-label="user-reaction-tag">shell</a></li> </ul> </div> <div class="centerarticle-reaction-foot"> <div class="centerarticle-reaction-meta"> <span class="comment-permalink js-comment-permalink"> <a href="/entry/4746227858854610927/comment/shunt_i" data-gtm-click-label="user-reaction-permalink" rel="nofollow">リンク</a> </span> <span class="list-star-container js-list-star-container"></span> <span class="twitter-click js-short-url-clicks"></span> </div> <ul class="centerarticle-reaction-menu"> <li class="js-add-star-container add-star-container"></li> </ul> </div> </div> </div> </div> <ul class="centerarticle-reaction-following js-user-following-bookmarks-icon"> </ul> <div class="js-user-following-bookmarks-detail is-hidden"> </div> </li> <li class="bookmark-item js-user-bookmark-item js-intent-share-bookmark" data-target-url="https://qiita.com/ko1nksm/items/7fec71f78a394a80ed2b"> <div class="centerarticle-entry is-image-entry-unit"> <h3 class="centerarticle-entry-title"> <a href="https://qiita.com/ko1nksm/items/7fec71f78a394a80ed2b" class="js-clickable-link js-keyboard-openable" target="_blank" rel="noopener" data-gtm-click-label="user-bookmark-title"><img class="centerarticle-entry-favicon" src="https://cdn-ak2.favicon.st-hatena.com/64?url=https%3A%2F%2Fqiita.com%2Fko1nksm%2Fitems%2F7fec71f78a394a80ed2b" alt="">findコマンドの使い方を簡単に理解するための7つのルール+実践的な知識 - Qiita</a> </h3> <ul class="centerarticle-entry-data"> <li> <span class="centerarticle-users"> <a href="/entry/s/qiita.com/ko1nksm/items/7fec71f78a394a80ed2b" class="js-keyboard-entry-page-openable" title="findコマンドの使い方を簡単に理解するための7つのルール+実践的な知識 - Qiita (393ブックマーク)" data-gtm-click-label="user-bookmark-users">393 users</a> </span> </li> <li> <a href="/shunt_i/?url=https%3A%2F%2Fqiita.com%2Fko1nksm" title="『qiita.com/ko1nksm』の新着エントリー" data-gtm-click-label="user-bookmark-domain"> qiita.com/ko1nksm </a> </li> <li><a href="/hotentry/it" data-gtm-click-label="user-bookmark-category">テクノロジー</a></li> </ul> <div class="centerarticle-entry-contents"> <p class="centerarticle-entry-summary">はじめに find コマンドの使い方は、ざっくり調べただけではよくわからんとなりますが、見逃しがちなルールを知れば簡単に理解できます。find コマンドに限りませんが使い方を調べるのが面倒だからと曖昧な理解で使うと逆にもっと分からなくなって時間がかかります。急がば回れ、理解して正しく使ったほうがシンプルで楽で簡単です。この記事では find コマンドの使い方を理解するために必要なルールと使い方の実践的な知識をまとめました。 Q&A(?): -type や -perm の説明はしないの? ⇒ それらはドキュメントを読むか検索すればすぐにわかることで難しいポイントではありません。重要なのは基<a data-gtm-click-label="entry-summary-keyword" href="/q/%E6%9C%AC">本</a>のルールを理解することです。 関連記事 POSIX 準拠のシェルスクリプトでは find | xargs よりも find -exec {} + を使うべき! 移植性の話はこちら ⇒ findコマンドのオ</p> <a href="https://qiita.com/ko1nksm/items/7fec71f78a394a80ed2b" class="centerarticle-entry-image" target="_blank" rel="noopener" data-gtm-click-label="user-bookmark-thumb"> <img src="https://cdn-ak-scissors.b.st-hatena.com/image/square/8aba6000f573edd2b4483c6d1fc6735cb32da762/height=288;version=1;width=512/https%3A%2F%2Fqiita-user-contents.imgix.net%2Fhttps%253A%252F%252Fqiita-user-contents.imgix.net%252Fhttps%25253A%25252F%25252Fcdn.qiita.com%25252Fassets%25252Fpublic%25252Farticle-ogp-background-afbab5eb44e0b055cce1258705637a91.png%253Fixlib%253Drb-4.0.0%2526w%253D1200%2526blend64%253DaHR0cHM6Ly9xaWl0YS11c2VyLXByb2ZpbGUtaW1hZ2VzLmltZ2l4Lm5ldC9odHRwcyUzQSUyRiUyRnFpaXRhLWltYWdlLXN0b3JlLnMzLmFtYXpvbmF3cy5jb20lMkYwJTJGNTQ5MTglMkZwcm9maWxlLWltYWdlcyUyRjE0NzM2OTM1Mjg_aXhsaWI9cmItNC4wLjAmYXI9MSUzQTEmZml0PWNyb3AmbWFzaz1lbGxpcHNlJmZtPXBuZzMyJnM9YjQzZjY0ZGMzZWVjY2UyZTY1MGQ4NTRlNzk3ZDI2NGQ%2526blend-x%253D120%2526blend-y%253D467%2526blend-w%253D82%2526blend-h%253D82%2526blend-mode%253Dnormal%2526s%253D8fcfde890a56b8fea74f53d87eeef4e6%3Fixlib%3Drb-4.0.0%26w%3D1200%26fm%3Djpg%26mark64%3DaHR0cHM6Ly9xaWl0YS11c2VyLWNvbnRlbnRzLmltZ2l4Lm5ldC9-dGV4dD9peGxpYj1yYi00LjAuMCZ3PTk2MCZoPTMyNCZ0eHQ9ZmluZCVFMyU4MiVCMyVFMyU4MyU5RSVFMyU4MyVCMyVFMyU4MyU4OSVFMyU4MSVBRSVFNCVCRCVCRiVFMyU4MSU4NCVFNiU5NiVCOSVFMyU4MiU5MiVFNyVCMCVBMSVFNSU4RCU5OCVFMyU4MSVBQiVFNyU5MCU4NiVFOCVBNyVBMyVFMyU4MSU5OSVFMyU4MiU4QiVFMyU4MSU5RiVFMyU4MiU4MSVFMyU4MSVBRTclRTMlODElQTQlRTMlODElQUUlRTMlODMlQUIlRTMlODMlQkMlRTMlODMlQUIlRUYlQkMlOEIlRTUlQUUlOUYlRTglQjclQjUlRTclOUElODQlRTMlODElQUElRTclOUYlQTUlRTglQUQlOTgmdHh0LWFsaWduPWxlZnQlMkN0b3AmdHh0LWNvbG9yPSUyMzFFMjEyMSZ0eHQtZm9udD1IaXJhZ2lubyUyMFNhbnMlMjBXNiZ0eHQtc2l6ZT01NiZ0eHQtcGFkPTAmcz0wZWU1ZjMzNjZiNGMyYjFmMGYwNDA2NDI2NGRhMTA5Mg%26mark-x%3D120%26mark-y%3D112%26blend64%3DaHR0cHM6Ly9xaWl0YS11c2VyLWNvbnRlbnRzLmltZ2l4Lm5ldC9-dGV4dD9peGxpYj1yYi00LjAuMCZ3PTgzOCZoPTU4JnR4dD0lNDBrbzFua3NtJnR4dC1jb2xvcj0lMjMxRTIxMjEmdHh0LWZvbnQ9SGlyYWdpbm8lMjBTYW5zJTIwVzYmdHh0LXNpemU9MzYmdHh0LXBhZD0wJnM9ODVlMzIyOWJiNjA2ZTE4YzM2ZmM0MzNjMTk0ZjJkMmI%26blend-x%3D242%26blend-y%3D480%26blend-w%3D838%26blend-h%3D46%26blend-fit%3Dcrop%26blend-crop%3Dleft%252Cbottom%26blend-mode%3Dnormal%26s%3D5aec034e5513d49cd0d366ee84447125" alt="findコマンドの使い方を簡単に理解するための7つのルール+実践的な知識 - Qiita"> </a> </div> </div> <div class="centerarticle-reaction js-user-bookmark-id-container" id="bookmark-4743696894579518991"> <div class="centerarticle-reaction-comment js-user-bookmark-comment " data-url="https://qiita.com/ko1nksm/items/7fec71f78a394a80ed2b" data-user-name="shunt_i"> <a href="/shunt_i/" data-gtm-click-label="user-reaction-usericon" class="centerarticle-reaction-thumb"> <img src="https://cdn.profile-image.st-hatena.com/users/shunt_i/profile.png" alt="shunt_i" title="shunt_i" class="centerarticle-reaction-image"> </a> <div class="centerarticle-reaction-main"> <span class="centerarticle-reaction-username"><a href="https://b.hatena.ne.jp/shunt_i/20231023#bookmark-4743696894579518991" class="js-anchor-path" data-gtm-click-label="user-reaction-username">shunt_i</a></span> <span class="centerarticle-reaction-timestamp">2023/10/23</span> <span class="js-private-icon status is-hidden"><img src="/images/v4/public/userpage/icon-private.svg" alt="非公開" width="10px" height="10px"></span> <div class="centerarticle-reaction-main-comment-tags"> <span class="js-comment"></span> <ul class="centerarticle-reaction-tags js-tag-text"> <li><a href="/shunt_i/shell/" data-gtm-click-label="user-reaction-tag">shell</a></li> </ul> </div> <div class="centerarticle-reaction-foot"> <div class="centerarticle-reaction-meta"> <span class="comment-permalink js-comment-permalink"> <a href="/entry/4743696894579518991/comment/shunt_i" data-gtm-click-label="user-reaction-permalink" rel="nofollow">リンク</a> </span> <span class="list-star-container js-list-star-container"></span> <span class="twitter-click js-short-url-clicks"></span> </div> <ul class="centerarticle-reaction-menu"> <li class="js-add-star-container add-star-container"></li> </ul> </div> </div> </div> </div> <ul class="centerarticle-reaction-following js-user-following-bookmarks-icon"> </ul> <div class="js-user-following-bookmarks-detail is-hidden"> </div> </li> <li class="bookmark-item js-user-bookmark-item js-intent-share-bookmark" data-target-url="https://zenn.dev/mizchi/scraps/8969fe29a27e21"> <div class="centerarticle-entry is-image-entry-unit"> <h3 class="centerarticle-entry-title"> <a href="https://zenn.dev/mizchi/scraps/8969fe29a27e21" class="js-clickable-link js-keyboard-openable" target="_blank" rel="noopener" data-gtm-click-label="user-bookmark-title"><img class="centerarticle-entry-favicon" src="https://cdn-ak2.favicon.st-hatena.com/64?url=https%3A%2F%2Fzenn.dev%2Fmizchi%2Fscraps%2F8969fe29a27e21" alt="">2023年のシェル環境構築</a> </h3> <ul class="centerarticle-entry-data"> <li> <span class="centerarticle-users"> <a href="/entry/s/zenn.dev/mizchi/scraps/8969fe29a27e21" class="js-keyboard-entry-page-openable" title="2023年のシェル環境構築 (392ブックマーク)" data-gtm-click-label="user-bookmark-users">392 users</a> </span> </li> <li> <a href="/shunt_i/?url=https%3A%2F%2Fzenn.dev%2Fmizchi" title="『zenn.dev/mizchi』の新着エントリー" data-gtm-click-label="user-bookmark-domain"> zenn.dev/mizchi </a> </li> <li><a href="/hotentry/it" data-gtm-click-label="user-bookmark-category">テクノロジー</a></li> </ul> <div class="centerarticle-entry-contents"> <p class="centerarticle-entry-summary">tl;dr fig starship zsh fzf sheldon なぜ <a data-gtm-click-label="entry-summary-keyword" href="/q/VSCode">vscode</a> の .<a data-gtm-click-label="entry-summary-keyword" href="/q/VSCode">vscode</a>/tasks.json が fishと非常に相性が悪い。とくに fish-nvm を使っていると、fish 経由のパス実行時に node と n<a data-gtm-click-label="entry-summary-keyword" href="/q/PM">pm</a> へパスが通らない。 そもそも fish を使っていた理由は autocomplete を快適にするためだったが、1年ぐらい Fig を使っていて、補完はこれを任せていいと気づいた。 Fig はこういうやつ そもそも fish の拡張コマンドを使わないように生活していた。方言を覚えたくない。というか bash 拡張や zsh 拡張もあんまり覚えたくない。</p> <a href="https://zenn.dev/mizchi/scraps/8969fe29a27e21" class="centerarticle-entry-image" target="_blank" rel="noopener" data-gtm-click-label="user-bookmark-thumb"> <img src="https://cdn-ak-scissors.b.st-hatena.com/image/square/786ba17f5cf4310e1c2f4fcb95fe521f0d0bc3b3/height=288;version=1;width=512/https%3A%2F%2Flh3.googleusercontent.com%2Fa-%2FAOh14GibrTGONvgwwk-_4leqY8LcFJSn_AhZzDYYJirMqg%3Ds250-c" alt="2023年のシェル環境構築"> </a> </div> </div> <div class="centerarticle-reaction js-user-bookmark-id-container" id="bookmark-4741934379826115023"> <div class="centerarticle-reaction-comment js-user-bookmark-comment " data-url="https://zenn.dev/mizchi/scraps/8969fe29a27e21" data-user-name="shunt_i"> <a href="/shunt_i/" data-gtm-click-label="user-reaction-usericon" class="centerarticle-reaction-thumb"> <img src="https://cdn.profile-image.st-hatena.com/users/shunt_i/profile.png" alt="shunt_i" title="shunt_i" class="centerarticle-reaction-image"> </a> <div class="centerarticle-reaction-main"> <span class="centerarticle-reaction-username"><a href="https://b.hatena.ne.jp/shunt_i/20230909#bookmark-4741934379826115023" class="js-anchor-path" data-gtm-click-label="user-reaction-username">shunt_i</a></span> <span class="centerarticle-reaction-timestamp">2023/09/09</span> <span class="js-private-icon status is-hidden"><img src="/images/v4/public/userpage/icon-private.svg" alt="非公開" width="10px" height="10px"></span> <div class="centerarticle-reaction-main-comment-tags"> <span class="js-comment"></span> <ul class="centerarticle-reaction-tags js-tag-text"> <li><a href="/shunt_i/%E3%81%82%E3%81%A8%E3%81%A7%E8%AA%AD%E3%82%80/" data-gtm-click-label="user-reaction-tag">あとで読む</a></li> <li><a href="/shunt_i/shell/" data-gtm-click-label="user-reaction-tag">shell</a></li> </ul> </div> <div class="centerarticle-reaction-foot"> <div class="centerarticle-reaction-meta"> <span class="comment-permalink js-comment-permalink"> <a href="/entry/4741934379826115023/comment/shunt_i" data-gtm-click-label="user-reaction-permalink" rel="nofollow">リンク</a> </span> <span class="list-star-container js-list-star-container"></span> <span class="twitter-click js-short-url-clicks"></span> </div> <ul class="centerarticle-reaction-menu"> <li class="js-add-star-container add-star-container"></li> </ul> </div> </div> </div> </div> <ul class="centerarticle-reaction-following js-user-following-bookmarks-icon"> </ul> <div class="js-user-following-bookmarks-detail is-hidden"> </div> </li> <li class="bookmark-item js-user-bookmark-item js-intent-share-bookmark" data-target-url="https://qiita.com/ko1nksm/items/b4b342f77f6d3ee1a0a9"> <div class="centerarticle-entry is-image-entry-unit"> <h3 class="centerarticle-entry-title"> <a href="https://qiita.com/ko1nksm/items/b4b342f77f6d3ee1a0a9" class="js-clickable-link js-keyboard-openable" target="_blank" rel="noopener" data-gtm-click-label="user-bookmark-title"><img class="centerarticle-entry-favicon" src="https://cdn-ak2.favicon.st-hatena.com/64?url=https%3A%2F%2Fqiita.com%2Fko1nksm%2Fitems%2Fb4b342f77f6d3ee1a0a9" alt="">【脱sed】いい加減シェルスクリプトで文字列をsedで置換するなんてやめよう - Qiita</a> </h3> <ul class="centerarticle-entry-data"> <li> <span class="centerarticle-users"> <a href="/entry/s/qiita.com/ko1nksm/items/b4b342f77f6d3ee1a0a9" class="js-keyboard-entry-page-openable" title="【脱sed】いい加減シェルスクリプトで文字列をsedで置換するなんてやめよう - Qiita (602ブックマーク)" data-gtm-click-label="user-bookmark-users">602 users</a> </span> </li> <li> <a href="/shunt_i/?url=https%3A%2F%2Fqiita.com%2Fko1nksm" title="『qiita.com/ko1nksm』の新着エントリー" data-gtm-click-label="user-bookmark-domain"> qiita.com/ko1nksm </a> </li> <li><a href="/hotentry/it" data-gtm-click-label="user-bookmark-category">テクノロジー</a></li> </ul> <div class="centerarticle-entry-contents"> <p class="centerarticle-entry-summary">Deleted art<a data-gtm-click-label="entry-summary-keyword" href="/q/ICL">icl</a>es cannot be recovered. Draft of this art<a data-gtm-click-label="entry-summary-keyword" href="/q/ICL">icl</a>e would be also deleted. Are you sure you want to delete this art<a data-gtm-click-label="entry-summary-keyword" href="/q/ICL">icl</a>e?</p> <a href="https://qiita.com/ko1nksm/items/b4b342f77f6d3ee1a0a9" class="centerarticle-entry-image" target="_blank" rel="noopener" data-gtm-click-label="user-bookmark-thumb"> <img src="https://cdn-ak-scissors.b.st-hatena.com/image/square/4a12211aefda8a732f2290c1758c818b847559d0/height=288;version=1;width=512/https%3A%2F%2Fqiita-user-contents.imgix.net%2Fhttps%253A%252F%252Fqiita-user-contents.imgix.net%252Fhttps%25253A%25252F%25252Fcdn.qiita.com%25252Fassets%25252Fpublic%25252Farticle-ogp-background-afbab5eb44e0b055cce1258705637a91.png%253Fixlib%253Drb-4.0.0%2526w%253D1200%2526blend64%253DaHR0cHM6Ly9xaWl0YS11c2VyLXByb2ZpbGUtaW1hZ2VzLmltZ2l4Lm5ldC9odHRwcyUzQSUyRiUyRnFpaXRhLWltYWdlLXN0b3JlLnMzLmFtYXpvbmF3cy5jb20lMkYwJTJGNTQ5MTglMkZwcm9maWxlLWltYWdlcyUyRjE0NzM2OTM1Mjg_aXhsaWI9cmItNC4wLjAmYXI9MSUzQTEmZml0PWNyb3AmbWFzaz1lbGxpcHNlJmZtPXBuZzMyJnM9YjQzZjY0ZGMzZWVjY2UyZTY1MGQ4NTRlNzk3ZDI2NGQ%2526blend-x%253D120%2526blend-y%253D467%2526blend-w%253D82%2526blend-h%253D82%2526blend-mode%253Dnormal%2526s%253D8fcfde890a56b8fea74f53d87eeef4e6%3Fixlib%3Drb-4.0.0%26w%3D1200%26fm%3Djpg%26mark64%3DaHR0cHM6Ly9xaWl0YS11c2VyLWNvbnRlbnRzLmltZ2l4Lm5ldC9-dGV4dD9peGxpYj1yYi00LjAuMCZ3PTk2MCZoPTMyNCZ0eHQ9JUUzJTgwJTkwJUU4JTg0JUIxc2VkJUUzJTgwJTkxJUUzJTgxJTg0JUUzJTgxJTg0JUU1JThBJUEwJUU2JUI4JTlCJUUzJTgyJUI3JUUzJTgyJUE3JUUzJTgzJUFCJUUzJTgyJUI5JUUzJTgyJUFGJUUzJTgzJUFBJUUzJTgzJTk3JUUzJTgzJTg4JUUzJTgxJUE3JUU2JTk2JTg3JUU1JUFEJTk3JUU1JTg4JTk3JUUzJTgyJTkyc2VkJUUzJTgxJUE3JUU3JUJEJUFFJUU2JThGJTlCJUUzJTgxJTk5JUUzJTgyJThCJUUzJTgxJUFBJUUzJTgyJTkzJUUzJTgxJUE2JUUzJTgyJTg0JUUzJTgyJTgxJUUzJTgyJTg4JUUzJTgxJTg2JnR4dC1hbGlnbj1sZWZ0JTJDdG9wJnR4dC1jb2xvcj0lMjMxRTIxMjEmdHh0LWZvbnQ9SGlyYWdpbm8lMjBTYW5zJTIwVzYmdHh0LXNpemU9NTYmdHh0LXBhZD0wJnM9N2ZkNWM5NjVlYThiNzMyODQyZmRlMGZmM2ZlYzcwYWY%26mark-x%3D120%26mark-y%3D112%26blend64%3DaHR0cHM6Ly9xaWl0YS11c2VyLWNvbnRlbnRzLmltZ2l4Lm5ldC9-dGV4dD9peGxpYj1yYi00LjAuMCZ3PTgzOCZoPTU4JnR4dD0lNDBrbzFua3NtJnR4dC1jb2xvcj0lMjMxRTIxMjEmdHh0LWZvbnQ9SGlyYWdpbm8lMjBTYW5zJTIwVzYmdHh0LXNpemU9MzYmdHh0LXBhZD0wJnM9ODVlMzIyOWJiNjA2ZTE4YzM2ZmM0MzNjMTk0ZjJkMmI%26blend-x%3D242%26blend-y%3D480%26blend-w%3D838%26blend-h%3D46%26blend-fit%3Dcrop%26blend-crop%3Dleft%252Cbottom%26blend-mode%3Dnormal%26s%3D5d6f5bb40c346f6b28c3acd8d33f893e" alt="【脱sed】いい加減シェルスクリプトで文字列をsedで置換するなんてやめよう - Qiita"> </a> </div> </div> <div class="centerarticle-reaction js-user-bookmark-id-container" id="bookmark-4741547981351086575"> <div class="centerarticle-reaction-comment js-user-bookmark-comment " data-url="https://qiita.com/ko1nksm/items/b4b342f77f6d3ee1a0a9" data-user-name="shunt_i"> <a href="/shunt_i/" data-gtm-click-label="user-reaction-usericon" class="centerarticle-reaction-thumb"> <img src="https://cdn.profile-image.st-hatena.com/users/shunt_i/profile.png" alt="shunt_i" title="shunt_i" class="centerarticle-reaction-image"> </a> <div class="centerarticle-reaction-main"> <span class="centerarticle-reaction-username"><a href="https://b.hatena.ne.jp/shunt_i/20230902#bookmark-4741547981351086575" class="js-anchor-path" data-gtm-click-label="user-reaction-username">shunt_i</a></span> <span class="centerarticle-reaction-timestamp">2023/09/02</span> <span class="js-private-icon status is-hidden"><img src="/images/v4/public/userpage/icon-private.svg" alt="非公開" width="10px" height="10px"></span> <div class="centerarticle-reaction-main-comment-tags"> <span class="js-comment"></span> <ul class="centerarticle-reaction-tags js-tag-text"> <li><a href="/shunt_i/shell/" data-gtm-click-label="user-reaction-tag">shell</a></li> </ul> </div> <div class="centerarticle-reaction-foot"> <div class="centerarticle-reaction-meta"> <span class="comment-permalink js-comment-permalink"> <a href="/entry/4741547981351086575/comment/shunt_i" data-gtm-click-label="user-reaction-permalink" rel="nofollow">リンク</a> </span> <span class="list-star-container js-list-star-container"></span> <span class="twitter-click js-short-url-clicks"></span> </div> <ul class="centerarticle-reaction-menu"> <li class="js-add-star-container add-star-container"></li> </ul> </div> </div> </div> </div> <ul class="centerarticle-reaction-following js-user-following-bookmarks-icon"> </ul> <div class="js-user-following-bookmarks-detail is-hidden"> </div> </li> <li class="bookmark-item js-user-bookmark-item js-intent-share-bookmark" data-target-url="https://saurabhs.org/advanced-macos-commands"> <div class="centerarticle-entry "> <h3 class="centerarticle-entry-title"> <a href="https://saurabhs.org/advanced-macos-commands" class="js-clickable-link js-keyboard-openable" target="_blank" rel="noopener" data-gtm-click-label="user-bookmark-title"><img class="centerarticle-entry-favicon" src="https://cdn-ak2.favicon.st-hatena.com/64?url=https%3A%2F%2Fsaurabhs.org%2Fadvanced-macos-commands" alt="">Advanced macOS Commands - saurabhs.org</a> </h3> <ul class="centerarticle-entry-data"> <li> <span class="centerarticle-users"> <a href="/entry/s/saurabhs.org/advanced-macos-commands" class="js-keyboard-entry-page-openable" title="Advanced macOS Commands - saurabhs.org (78ブックマーク)" data-gtm-click-label="user-bookmark-users">78 users</a> </span> </li> <li> <a href="/shunt_i/?url=https%3A%2F%2Fsaurabhs.org%2F" title="『saurabhs.org』の新着エントリー" data-gtm-click-label="user-bookmark-domain"> saurabhs.org </a> </li> <li><a href="/hotentry/it" data-gtm-click-label="user-bookmark-category">テクノロジー</a></li> </ul> <div class="centerarticle-entry-contents"> <p class="centerarticle-entry-summary"><a data-gtm-click-label="entry-summary-keyword" href="/q/MacOS">macOS</a> is fortunate to have access to the huge arsenal of standard Unix tools. There are also a <a data-gtm-click-label="entry-summary-keyword" href="/q/go">go</a>od number of <a data-gtm-click-label="entry-summary-keyword" href="/q/MacOS">macOS</a>-specific command-<a data-gtm-click-label="entry-summary-keyword" href="/q/LINE">line</a> util<a data-gtm-click-label="entry-summary-keyword" href="/q/it">it</a>ies that provide unique <a data-gtm-click-label="entry-summary-keyword" href="/q/MacOS">macOS</a> functional<a data-gtm-click-label="entry-summary-keyword" href="/q/it">it</a>y. To view the full documentation for any of these commands, run man <command>. caffeinate - set <a data-gtm-click-label="entry-summary-keyword" href="/q/mac">Mac</a> sleep behavior Running caffeinate w<a data-gtm-click-label="entry-summary-keyword" href="/q/it">it</a>h no flags or arguments prevents your <a data-gtm-click-label="entry-summary-keyword" href="/q/mac">Mac</a> from <a data-gtm-click-label="entry-summary-keyword" href="/q/go">go</a>ing to sleep as long as the</p> </div> </div> <div class="centerarticle-reaction js-user-bookmark-id-container" id="bookmark-4738530529673719621"> <div class="centerarticle-reaction-comment js-user-bookmark-comment " data-url="https://saurabhs.org/advanced-macos-commands" data-user-name="shunt_i"> <a href="/shunt_i/" data-gtm-click-label="user-reaction-usericon" class="centerarticle-reaction-thumb"> <img src="https://cdn.profile-image.st-hatena.com/users/shunt_i/profile.png" alt="shunt_i" title="shunt_i" class="centerarticle-reaction-image"> </a> <div class="centerarticle-reaction-main"> <span class="centerarticle-reaction-username"><a href="https://b.hatena.ne.jp/shunt_i/20230628#bookmark-4738530529673719621" class="js-anchor-path" data-gtm-click-label="user-reaction-username">shunt_i</a></span> <span class="centerarticle-reaction-timestamp">2023/06/28</span> <span class="js-private-icon status is-hidden"><img src="/images/v4/public/userpage/icon-private.svg" alt="非公開" width="10px" height="10px"></span> <div class="centerarticle-reaction-main-comment-tags"> <span class="js-comment"></span> <ul class="centerarticle-reaction-tags js-tag-text"> <li><a href="/shunt_i/mac/" data-gtm-click-label="user-reaction-tag">mac</a></li> <li><a href="/shunt_i/shell/" data-gtm-click-label="user-reaction-tag">shell</a></li> </ul> </div> <div class="centerarticle-reaction-foot"> <div class="centerarticle-reaction-meta"> <span class="comment-permalink js-comment-permalink"> <a href="/entry/4738530529673719621/comment/shunt_i" data-gtm-click-label="user-reaction-permalink" rel="nofollow">リンク</a> </span> <span class="list-star-container js-list-star-container"></span> <span class="twitter-click js-short-url-clicks"></span> </div> <ul class="centerarticle-reaction-menu"> <li class="js-add-star-container add-star-container"></li> </ul> </div> </div> </div> </div> <ul class="centerarticle-reaction-following js-user-following-bookmarks-icon"> </ul> <div class="js-user-following-bookmarks-detail is-hidden"> </div> </li> <li class="bookmark-item js-user-bookmark-item js-intent-share-bookmark" data-target-url="https://qiita.com/kjm_nuco/items/6a4faf4d026d130e7db1"> <div class="centerarticle-entry is-image-entry-unit"> <h3 class="centerarticle-entry-title"> <a href="https://qiita.com/kjm_nuco/items/6a4faf4d026d130e7db1" class="js-clickable-link js-keyboard-openable" target="_blank" rel="noopener" data-gtm-click-label="user-bookmark-title"><img class="centerarticle-entry-favicon" src="https://cdn-ak2.favicon.st-hatena.com/64?url=https%3A%2F%2Fqiita.com%2Fkjm_nuco%2Fitems%2F6a4faf4d026d130e7db1" alt="">Bashを使いこなすための必須コマンド71選 - Qiita</a> </h3> <ul class="centerarticle-entry-data"> <li> <span class="centerarticle-users"> <a href="/entry/s/qiita.com/kjm_nuco/items/6a4faf4d026d130e7db1" class="js-keyboard-entry-page-openable" title="Bashを使いこなすための必須コマンド71選 - Qiita (344ブックマーク)" data-gtm-click-label="user-bookmark-users">344 users</a> </span> </li> <li> <a href="/shunt_i/?url=https%3A%2F%2Fqiita.com%2Fkjm_nuco" title="『qiita.com/kjm_nuco』の新着エントリー" data-gtm-click-label="user-bookmark-domain"> qiita.com/kjm_nuco </a> </li> <li><a href="/hotentry/it" data-gtm-click-label="user-bookmark-category">テクノロジー</a></li> </ul> <div class="centerarticle-entry-contents"> <p class="centerarticle-entry-summary">Deleted art<a data-gtm-click-label="entry-summary-keyword" href="/q/ICL">icl</a>es cannot be recovered. Draft of this art<a data-gtm-click-label="entry-summary-keyword" href="/q/ICL">icl</a>e would be also deleted. Are you sure you want to delete this art<a data-gtm-click-label="entry-summary-keyword" href="/q/ICL">icl</a>e?</p> <a href="https://qiita.com/kjm_nuco/items/6a4faf4d026d130e7db1" class="centerarticle-entry-image" target="_blank" rel="noopener" data-gtm-click-label="user-bookmark-thumb"> <img src="https://cdn-ak-scissors.b.st-hatena.com/image/square/bdd61ec1abbd10f06f6ee0030f0babd7fec4efa6/height=288;version=1;width=512/https%3A%2F%2Fqiita-user-contents.imgix.net%2Fhttps%253A%252F%252Fcdn.qiita.com%252Fassets%252Fpublic%252Farticle-ogp-background-9f5428127621718a910c8b63951390ad.png%3Fixlib%3Drb-4.0.0%26w%3D1200%26mark64%3DaHR0cHM6Ly9xaWl0YS11c2VyLWNvbnRlbnRzLmltZ2l4Lm5ldC9-dGV4dD9peGxpYj1yYi00LjAuMCZ3PTkxNiZoPTMzNiZ0eHQ9QmFzaCVFMyU4MiU5MiVFNCVCRCVCRiVFMyU4MSU4NCVFMyU4MSU5MyVFMyU4MSVBQSVFMyU4MSU5OSVFMyU4MSU5RiVFMyU4MiU4MSVFMyU4MSVBRSVFNSVCRiU4NSVFOSVBMCU4OCVFMyU4MiVCMyVFMyU4MyU5RSVFMyU4MyVCMyVFMyU4MyU4OTcxJUU5JTgxJUI4JnR4dC1jb2xvcj0lMjMyMTIxMjEmdHh0LWZvbnQ9SGlyYWdpbm8lMjBTYW5zJTIwVzYmdHh0LXNpemU9NTYmdHh0LWNsaXA9ZWxsaXBzaXMmdHh0LWFsaWduPWxlZnQlMkN0b3Amcz1hZjUyYTIzMjZjN2QxYjRlMzZjYjU1NzdkYTliYzZmNQ%26mark-x%3D142%26mark-y%3D112%26blend64%3DaHR0cHM6Ly9xaWl0YS11c2VyLWNvbnRlbnRzLmltZ2l4Lm5ldC9-dGV4dD9peGxpYj1yYi00LjAuMCZ3PTcxNiZ0eHQ9JTQwa2ptX251Y28lMjBpbiUyMCVFNiVBMCVBQSVFNSVCQyU4RiVFNCVCQyU5QSVFNyVBNCVCRU51Y28mdHh0LWNvbG9yPSUyMzIxMjEyMSZ0eHQtZm9udD1IaXJhZ2lubyUyMFNhbnMlMjBXNiZ0eHQtc2l6ZT0zMiZ0eHQtYWxpZ249bGVmdCUyQ3RvcCZzPWQ1MDFkYWE5ODExMDExOWFhYzI1Mzg3YTU3NzI1OGQz%26blend-x%3D142%26blend-y%3D491%26blend-mode%3Dnormal%26s%3D5d2d522531038f02d2301244acd976b5" alt="Bashを使いこなすための必須コマンド71選 - Qiita"> </a> </div> </div> <div class="centerarticle-reaction js-user-bookmark-id-container" id="bookmark-4737833040067814757"> <div class="centerarticle-reaction-comment js-user-bookmark-comment " data-url="https://qiita.com/kjm_nuco/items/6a4faf4d026d130e7db1" data-user-name="shunt_i"> <a href="/shunt_i/" data-gtm-click-label="user-reaction-usericon" class="centerarticle-reaction-thumb"> <img src="https://cdn.profile-image.st-hatena.com/users/shunt_i/profile.png" alt="shunt_i" title="shunt_i" class="centerarticle-reaction-image"> </a> <div class="centerarticle-reaction-main"> <span class="centerarticle-reaction-username"><a href="https://b.hatena.ne.jp/shunt_i/20230613#bookmark-4737833040067814757" class="js-anchor-path" data-gtm-click-label="user-reaction-username">shunt_i</a></span> <span class="centerarticle-reaction-timestamp">2023/06/13</span> <span class="js-private-icon status is-hidden"><img src="/images/v4/public/userpage/icon-private.svg" alt="非公開" width="10px" height="10px"></span> <div class="centerarticle-reaction-main-comment-tags"> <span class="js-comment"></span> <ul class="centerarticle-reaction-tags js-tag-text"> <li><a href="/shunt_i/UNIX/" data-gtm-click-label="user-reaction-tag">UNIX</a></li> <li><a href="/shunt_i/shell/" data-gtm-click-label="user-reaction-tag">shell</a></li> </ul> </div> <div class="centerarticle-reaction-foot"> <div class="centerarticle-reaction-meta"> <span class="comment-permalink js-comment-permalink"> <a href="/entry/4737833040067814757/comment/shunt_i" data-gtm-click-label="user-reaction-permalink" rel="nofollow">リンク</a> </span> <span class="list-star-container js-list-star-container"></span> <span class="twitter-click js-short-url-clicks"></span> </div> <ul class="centerarticle-reaction-menu"> <li class="js-add-star-container add-star-container"></li> </ul> </div> </div> </div> </div> <ul class="centerarticle-reaction-following js-user-following-bookmarks-icon"> </ul> <div class="js-user-following-bookmarks-detail is-hidden"> </div> </li> <li class="bookmark-item js-user-bookmark-item js-intent-share-bookmark" data-target-url="https://zenn.dev/sprout2000/articles/bd1fac2f3f83bc"> <div class="centerarticle-entry is-image-entry-unit"> <h3 class="centerarticle-entry-title"> <a href="https://zenn.dev/sprout2000/articles/bd1fac2f3f83bc" class="js-clickable-link js-keyboard-openable" target="_blank" rel="noopener" data-gtm-click-label="user-bookmark-title"><img class="centerarticle-entry-favicon" src="https://cdn-ak2.favicon.st-hatena.com/64?url=https%3A%2F%2Fzenn.dev%2Fsprout2000%2Farticles%2Fbd1fac2f3f83bc" alt="">macOS の zsh ではこれだけはやっておこう</a> </h3> <ul class="centerarticle-entry-data"> <li> <span class="centerarticle-users"> <a href="/entry/s/zenn.dev/sprout2000/articles/bd1fac2f3f83bc" class="js-keyboard-entry-page-openable" title="macOS の zsh ではこれだけはやっておこう (376ブックマーク)" data-gtm-click-label="user-bookmark-users">376 users</a> </span> </li> <li> <a href="/shunt_i/?url=https%3A%2F%2Fzenn.dev%2Fsprout2000" title="『zenn.dev/sprout2000』の新着エントリー" data-gtm-click-label="user-bookmark-domain"> zenn.dev/sprout2000 </a> </li> <li><a href="/hotentry/it" data-gtm-click-label="user-bookmark-category">テクノロジー</a></li> </ul> <div class="centerarticle-entry-contents"> <p class="centerarticle-entry-summary">/bin/bash -c "$(<a data-gtm-click-label="entry-summary-keyword" href="/q/cURL">curl</a> -fsSL https://<a data-gtm-click-label="entry-summary-keyword" href="/q/RAW">raw</a>.<a data-gtm-click-label="entry-summary-keyword" href="/q/github">github</a>usercontent.com/Homebrew/install/HEAD/install.sh)"</p> <a href="https://zenn.dev/sprout2000/articles/bd1fac2f3f83bc" class="centerarticle-entry-image" target="_blank" rel="noopener" data-gtm-click-label="user-bookmark-thumb"> <img src="https://cdn-ak-scissors.b.st-hatena.com/image/square/db6eae3c506a421941643199c6fc2fa9ddd3941a/height=288;version=1;width=512/https%3A%2F%2Fres.cloudinary.com%2Fzenn%2Fimage%2Fupload%2Fs--5bmgq2H7--%2Fc_fit%252Cg_north_west%252Cl_text%3Anotosansjp-medium.otf_55%3AmacOS%252520%2525E3%252581%2525AE%252520zsh%252520%2525E3%252581%2525A7%2525E3%252581%2525AF%2525E3%252581%252593%2525E3%252582%25258C%2525E3%252581%2525A0%2525E3%252581%252591%2525E3%252581%2525AF%2525E3%252582%252584%2525E3%252581%2525A3%2525E3%252581%2525A6%2525E3%252581%25258A%2525E3%252581%252593%2525E3%252581%252586%252Cw_1010%252Cx_90%252Cy_100%2Fg_south_west%252Cl_text%3Anotosansjp-medium.otf_37%3A%2525E3%252581%2525AF%2525E3%252581%2525A3%2525E3%252581%2525B1%252Cx_203%252Cy_121%2Fg_south_west%252Ch_90%252Cl_fetch%3AaHR0cHM6Ly9zdG9yYWdlLmdvb2dsZWFwaXMuY29tL3plbm4tdXNlci11cGxvYWQvYXZhdGFyLzQyZmQ4YmQ3NmMuanBlZw%3D%3D%252Cr_max%252Cw_90%252Cx_87%252Cy_95%2Fv1627283836%2Fdefault%2Fog-base-w1200-v2.png" alt="macOS の zsh ではこれだけはやっておこう"> </a> </div> </div> <div class="centerarticle-reaction js-user-bookmark-id-container" id="bookmark-4710186004774817506"> <div class="centerarticle-reaction-comment js-user-bookmark-comment " data-url="https://zenn.dev/sprout2000/articles/bd1fac2f3f83bc" data-user-name="shunt_i"> <a href="/shunt_i/" data-gtm-click-label="user-reaction-usericon" class="centerarticle-reaction-thumb"> <img src="https://cdn.profile-image.st-hatena.com/users/shunt_i/profile.png" alt="shunt_i" title="shunt_i" class="centerarticle-reaction-image"> </a> <div class="centerarticle-reaction-main"> <span class="centerarticle-reaction-username"><a href="https://b.hatena.ne.jp/shunt_i/20230427#bookmark-4710186004774817506" class="js-anchor-path" data-gtm-click-label="user-reaction-username">shunt_i</a></span> <span class="centerarticle-reaction-timestamp">2023/04/27</span> <span class="js-private-icon status is-hidden"><img src="/images/v4/public/userpage/icon-private.svg" alt="非公開" width="10px" height="10px"></span> <div class="centerarticle-reaction-main-comment-tags"> <span class="js-comment"></span> <ul class="centerarticle-reaction-tags js-tag-text"> <li><a href="/shunt_i/zsh/" data-gtm-click-label="user-reaction-tag">zsh</a></li> <li><a href="/shunt_i/shell/" data-gtm-click-label="user-reaction-tag">shell</a></li> <li><a href="/shunt_i/mac/" data-gtm-click-label="user-reaction-tag">mac</a></li> <li><a href="/shunt_i/%E3%81%82%E3%81%A8%E3%81%A7%E3%82%84%E3%82%8B/" data-gtm-click-label="user-reaction-tag">あとでやる</a></li> </ul> </div> <div class="centerarticle-reaction-foot"> <div class="centerarticle-reaction-meta"> <span class="comment-permalink js-comment-permalink"> <a href="/entry/4710186004774817506/comment/shunt_i" data-gtm-click-label="user-reaction-permalink" rel="nofollow">リンク</a> </span> <span class="list-star-container js-list-star-container"></span> <span class="twitter-click js-short-url-clicks"></span> </div> <ul class="centerarticle-reaction-menu"> <li class="js-add-star-container add-star-container"></li> </ul> </div> </div> </div> </div> <ul class="centerarticle-reaction-following js-user-following-bookmarks-icon"> </ul> <div class="js-user-following-bookmarks-detail is-hidden"> </div> </li> <li class="bookmark-item js-user-bookmark-item js-intent-share-bookmark" data-target-url="https://qiita.com/ko1nksm/items/fb42b741f5d176996ec1"> <div class="centerarticle-entry is-image-entry-unit"> <h3 class="centerarticle-entry-title"> <a href="https://qiita.com/ko1nksm/items/fb42b741f5d176996ec1" class="js-clickable-link js-keyboard-openable" target="_blank" rel="noopener" data-gtm-click-label="user-bookmark-title"><img class="centerarticle-entry-favicon" src="https://cdn-ak2.favicon.st-hatena.com/64?url=https%3A%2F%2Fqiita.com%2Fko1nksm%2Fitems%2Ffb42b741f5d176996ec1" alt="">シェルスクリプトでlsをパイプでつなぐのはなぜ悪いのか ~ ShellCheck: SC2010, SC2011, SC2012 とファイル名改行問題 - Qiita</a> </h3> <ul class="centerarticle-entry-data"> <li> <span class="centerarticle-users"> <a href="/entry/s/qiita.com/ko1nksm/items/fb42b741f5d176996ec1" class="js-keyboard-entry-page-openable" title="シェルスクリプトでlsをパイプでつなぐのはなぜ悪いのか ~ ShellCheck: SC2010, SC2011, SC2012 とファイル名改行問題 - Qiita (341ブックマーク)" data-gtm-click-label="user-bookmark-users">341 users</a> </span> </li> <li> <a href="/shunt_i/?url=https%3A%2F%2Fqiita.com%2Fko1nksm" title="『qiita.com/ko1nksm』の新着エントリー" data-gtm-click-label="user-bookmark-domain"> qiita.com/ko1nksm </a> </li> <li><a href="/hotentry/it" data-gtm-click-label="user-bookmark-category">テクノロジー</a></li> </ul> <div class="centerarticle-entry-contents"> <p class="centerarticle-entry-summary">シェルスクリプトでlsをパイプでつなぐのはなぜ悪いのか ~ ShellCheck: SC2010, SC2011, SC2012 とファイル名改行問題<a data-gtm-click-label="entry-summary-keyword" href="/q/ShellScript">ShellScript</a>UNIXshellシェル芸POSIX はじめに シェルスクリプトで ls コマンドの出力結果(ファイル名一覧)をパイプで他のコマンドに渡して処理するのは推奨されません。ls コマンドを使ったコードを ShellCheck で検査するとおそらく問題があると警告が表示されるでしょう。ls を使うなという指摘自体には賛成なのですが SC2010、SC2011、SC2012 に書いてある理由については正しい説明がされていないと思っています。この記事ではなぜ ls の出力結果を他のコマンドにパイプで渡すのが悪いのか、ls を使わずに実現するにはどうしたら良いのかを解説したいと思います。一つ補足をしておくと、この問題は CLI コマ</p> <a href="https://qiita.com/ko1nksm/items/fb42b741f5d176996ec1" class="centerarticle-entry-image" target="_blank" rel="noopener" data-gtm-click-label="user-bookmark-thumb"> <img src="https://cdn-ak-scissors.b.st-hatena.com/image/square/7433e7214ebb637204de94bccc6c3d6e347f0fc8/height=288;version=1;width=512/https%3A%2F%2Fqiita-user-contents.imgix.net%2Fhttps%253A%252F%252Fqiita-user-contents.imgix.net%252Fhttps%25253A%25252F%25252Fcdn.qiita.com%25252Fassets%25252Fpublic%25252Farticle-ogp-background-afbab5eb44e0b055cce1258705637a91.png%253Fixlib%253Drb-4.0.0%2526w%253D1200%2526blend64%253DaHR0cHM6Ly9xaWl0YS11c2VyLXByb2ZpbGUtaW1hZ2VzLmltZ2l4Lm5ldC9odHRwcyUzQSUyRiUyRnFpaXRhLWltYWdlLXN0b3JlLnMzLmFtYXpvbmF3cy5jb20lMkYwJTJGNTQ5MTglMkZwcm9maWxlLWltYWdlcyUyRjE0NzM2OTM1Mjg_aXhsaWI9cmItNC4wLjAmYXI9MSUzQTEmZml0PWNyb3AmbWFzaz1lbGxpcHNlJmZtPXBuZzMyJnM9YjQzZjY0ZGMzZWVjY2UyZTY1MGQ4NTRlNzk3ZDI2NGQ%2526blend-x%253D120%2526blend-y%253D467%2526blend-w%253D82%2526blend-h%253D82%2526blend-mode%253Dnormal%2526s%253D8fcfde890a56b8fea74f53d87eeef4e6%3Fixlib%3Drb-4.0.0%26w%3D1200%26fm%3Djpg%26mark64%3DaHR0cHM6Ly9xaWl0YS11c2VyLWNvbnRlbnRzLmltZ2l4Lm5ldC9-dGV4dD9peGxpYj1yYi00LjAuMCZ3PTk2MCZoPTMyNCZ0eHQ9JUUzJTgyJUI3JUUzJTgyJUE3JUUzJTgzJUFCJUUzJTgyJUI5JUUzJTgyJUFGJUUzJTgzJUFBJUUzJTgzJTk3JUUzJTgzJTg4JUUzJTgxJUE3bHMlRTMlODIlOTIlRTMlODMlOTElRTMlODIlQTQlRTMlODMlOTclRTMlODElQTclRTMlODElQTQlRTMlODElQUElRTMlODElOTAlRTMlODElQUUlRTMlODElQUYlRTMlODElQUElRTMlODElOUMlRTYlODIlQUElRTMlODElODQlRTMlODElQUUlRTMlODElOEIlMjAlRUYlQkQlOUUlMjBTaGVsbENoZWNrJTNBJTIwU0MyMDEwJTJDJTIwU0MyMDExJTJDJTIwU0MyMDEyJTIwJUUzJTgxJUE4JUUyJTgwJUE2JnR4dC1hbGlnbj1sZWZ0JTJDdG9wJnR4dC1jb2xvcj0lMjMxRTIxMjEmdHh0LWZvbnQ9SGlyYWdpbm8lMjBTYW5zJTIwVzYmdHh0LXNpemU9NTYmdHh0LXBhZD0wJnM9OWJhMWI3YzQyM2JmN2FkZTI0ZDcyNTM3OTQxZmM3NzU%26mark-x%3D120%26mark-y%3D112%26blend64%3DaHR0cHM6Ly9xaWl0YS11c2VyLWNvbnRlbnRzLmltZ2l4Lm5ldC9-dGV4dD9peGxpYj1yYi00LjAuMCZ3PTgzOCZoPTU4JnR4dD0lNDBrbzFua3NtJnR4dC1jb2xvcj0lMjMxRTIxMjEmdHh0LWZvbnQ9SGlyYWdpbm8lMjBTYW5zJTIwVzYmdHh0LXNpemU9MzYmdHh0LXBhZD0wJnM9ODVlMzIyOWJiNjA2ZTE4YzM2ZmM0MzNjMTk0ZjJkMmI%26blend-x%3D242%26blend-y%3D480%26blend-w%3D838%26blend-h%3D46%26blend-fit%3Dcrop%26blend-crop%3Dleft%252Cbottom%26blend-mode%3Dnormal%26s%3D796837889d270024415e196b3d091736" alt="シェルスクリプトでlsをパイプでつなぐのはなぜ悪いのか ~ ShellCheck: SC2010, SC2011, SC2012 とファイル名改行問題 - Qiita"> </a> </div> </div> <div class="centerarticle-reaction js-user-bookmark-id-container" id="bookmark-4730620888078567780"> <div class="centerarticle-reaction-comment js-user-bookmark-comment " data-url="https://qiita.com/ko1nksm/items/fb42b741f5d176996ec1" data-user-name="shunt_i"> <a href="/shunt_i/" data-gtm-click-label="user-reaction-usericon" class="centerarticle-reaction-thumb"> <img src="https://cdn.profile-image.st-hatena.com/users/shunt_i/profile.png" alt="shunt_i" title="shunt_i" class="centerarticle-reaction-image"> </a> <div class="centerarticle-reaction-main"> <span class="centerarticle-reaction-username"><a href="https://b.hatena.ne.jp/shunt_i/20230109#bookmark-4730620888078567780" class="js-anchor-path" data-gtm-click-label="user-reaction-username">shunt_i</a></span> <span class="centerarticle-reaction-timestamp">2023/01/09</span> <span class="js-private-icon status is-hidden"><img src="/images/v4/public/userpage/icon-private.svg" alt="非公開" width="10px" height="10px"></span> <div class="centerarticle-reaction-main-comment-tags"> <span class="js-comment"></span> <ul class="centerarticle-reaction-tags js-tag-text"> <li><a href="/shunt_i/shell/" data-gtm-click-label="user-reaction-tag">shell</a></li> <li><a href="/shunt_i/UNIX/" data-gtm-click-label="user-reaction-tag">UNIX</a></li> </ul> </div> <div class="centerarticle-reaction-foot"> <div class="centerarticle-reaction-meta"> <span class="comment-permalink js-comment-permalink"> <a href="/entry/4730620888078567780/comment/shunt_i" data-gtm-click-label="user-reaction-permalink" rel="nofollow">リンク</a> </span> <span class="list-star-container js-list-star-container"></span> <span class="twitter-click js-short-url-clicks"></span> </div> <ul class="centerarticle-reaction-menu"> <li class="js-add-star-container add-star-container"></li> </ul> </div> </div> </div> </div> <ul class="centerarticle-reaction-following js-user-following-bookmarks-icon"> </ul> <div class="js-user-following-bookmarks-detail is-hidden"> </div> </li> <li class="bookmark-item js-user-bookmark-item js-intent-share-bookmark" data-target-url="https://qiita.com/ko1nksm/items/935be63e940f00e4c228"> <div class="centerarticle-entry is-image-entry-unit"> <h3 class="centerarticle-entry-title"> <a href="https://qiita.com/ko1nksm/items/935be63e940f00e4c228" class="js-clickable-link js-keyboard-openable" target="_blank" rel="noopener" data-gtm-click-label="user-bookmark-title"><img class="centerarticle-entry-favicon" src="https://cdn-ak2.favicon.st-hatena.com/64?url=https%3A%2F%2Fqiita.com%2Fko1nksm%2Fitems%2F935be63e940f00e4c228" alt="">初学者のための正しいシェルとカーネルの概念 ~ 大学も技術者認定機関も間違いだらけ - Qiita</a> </h3> <ul class="centerarticle-entry-data"> <li> <span class="centerarticle-users"> <a href="/entry/s/qiita.com/ko1nksm/items/935be63e940f00e4c228" class="js-keyboard-entry-page-openable" title="初学者のための正しいシェルとカーネルの概念 ~ 大学も技術者認定機関も間違いだらけ - Qiita (319ブックマーク)" data-gtm-click-label="user-bookmark-users">319 users</a> </span> </li> <li> <a href="/shunt_i/?url=https%3A%2F%2Fqiita.com%2Fko1nksm" title="『qiita.com/ko1nksm』の新着エントリー" data-gtm-click-label="user-bookmark-domain"> qiita.com/ko1nksm </a> </li> <li><a href="/hotentry/it" data-gtm-click-label="user-bookmark-category">テクノロジー</a></li> </ul> <div class="centerarticle-entry-contents"> <p class="centerarticle-entry-summary">Deleted art<a data-gtm-click-label="entry-summary-keyword" href="/q/ICL">icl</a>es cannot be recovered. Draft of this art<a data-gtm-click-label="entry-summary-keyword" href="/q/ICL">icl</a>e would be also deleted. Are you sure you want to delete this art<a data-gtm-click-label="entry-summary-keyword" href="/q/ICL">icl</a>e? なんだろう、嘘つくのやめてもらっていいですか? 大学も<a data-gtm-click-label="entry-summary-keyword" href="/q/%E6%8A%80%E8%A1%93">技術</a>者認定機関も、いつまで古いまたは間違ったシェルとカーネルの概念を説明し続けるのでしょうか? シェルはカーネルの言葉をユーザーの言葉に翻訳したり、出力結果をユーザーに中継したり、カーネルを防御したりする層ではありません。指定したコマンドを実行するだけのプログラムです。勉強中の学生か代理執筆業者が適当な文献を調べて書いたとしか思えません。そして他人の説明を自分の言葉に置き換えるのが上手い人がおかしな説明をさらに広めています。個人サイトやオンライン学習サイト程度であれば適当なことを書い</p> <a href="https://qiita.com/ko1nksm/items/935be63e940f00e4c228" class="centerarticle-entry-image" target="_blank" rel="noopener" data-gtm-click-label="user-bookmark-thumb"> <img src="https://cdn-ak-scissors.b.st-hatena.com/image/square/e8260d8cd38174dc33142daee9311889f08df400/height=288;version=1;width=512/https%3A%2F%2Fqiita-user-contents.imgix.net%2Fhttps%253A%252F%252Fqiita-user-contents.imgix.net%252Fhttps%25253A%25252F%25252Fcdn.qiita.com%25252Fassets%25252Fpublic%25252Farticle-ogp-background-afbab5eb44e0b055cce1258705637a91.png%253Fixlib%253Drb-4.0.0%2526w%253D1200%2526blend64%253DaHR0cHM6Ly9xaWl0YS11c2VyLXByb2ZpbGUtaW1hZ2VzLmltZ2l4Lm5ldC9odHRwcyUzQSUyRiUyRnFpaXRhLWltYWdlLXN0b3JlLnMzLmFtYXpvbmF3cy5jb20lMkYwJTJGNTQ5MTglMkZwcm9maWxlLWltYWdlcyUyRjE0NzM2OTM1Mjg_aXhsaWI9cmItNC4wLjAmYXI9MSUzQTEmZml0PWNyb3AmbWFzaz1lbGxpcHNlJmZtPXBuZzMyJnM9YjQzZjY0ZGMzZWVjY2UyZTY1MGQ4NTRlNzk3ZDI2NGQ%2526blend-x%253D120%2526blend-y%253D467%2526blend-w%253D82%2526blend-h%253D82%2526blend-mode%253Dnormal%2526s%253D8fcfde890a56b8fea74f53d87eeef4e6%3Fixlib%3Drb-4.0.0%26w%3D1200%26fm%3Djpg%26mark64%3DaHR0cHM6Ly9xaWl0YS11c2VyLWNvbnRlbnRzLmltZ2l4Lm5ldC9-dGV4dD9peGxpYj1yYi00LjAuMCZ3PTk2MCZoPTMyNCZ0eHQ9JUU1JTg4JTlEJUU1JUFEJUE2JUU4JTgwJTg1JUUzJTgxJUFFJUUzJTgxJTlGJUUzJTgyJTgxJUUzJTgxJUFFJUU2JUFEJUEzJUUzJTgxJTk3JUUzJTgxJTg0JUUzJTgyJUI3JUUzJTgyJUE3JUUzJTgzJUFCJUUzJTgxJUE4JUUzJTgyJUFCJUUzJTgzJUJDJUUzJTgzJThEJUUzJTgzJUFCJUUzJTgxJUFFJUU2JUE2JTgyJUU1JUJGJUI1JTIwJUVGJUJEJTlFJTIwJUU1JUE0JUE3JUU1JUFEJUE2JUUzJTgyJTgyJUU2JThBJTgwJUU4JUExJTkzJUU4JTgwJTg1JUU4JUFBJThEJUU1JUFFJTlBJUU2JUE5JTlGJUU5JTk2JUEyJUUzJTgyJTgyJUU5JTk2JTkzJUU5JTgxJTk1JUUzJTgxJTg0JUUzJTgxJUEwJUUzJTgyJTg5JUUzJTgxJTkxJnR4dC1hbGlnbj1sZWZ0JTJDdG9wJnR4dC1jb2xvcj0lMjMxRTIxMjEmdHh0LWZvbnQ9SGlyYWdpbm8lMjBTYW5zJTIwVzYmdHh0LXNpemU9NTYmdHh0LXBhZD0wJnM9ZjFiNGU1YTljYmRhZjljMGM5ZGZiZjlmOGNlNTBjOTA%26mark-x%3D120%26mark-y%3D112%26blend64%3DaHR0cHM6Ly9xaWl0YS11c2VyLWNvbnRlbnRzLmltZ2l4Lm5ldC9-dGV4dD9peGxpYj1yYi00LjAuMCZ3PTgzOCZoPTU4JnR4dD0lNDBrbzFua3NtJnR4dC1jb2xvcj0lMjMxRTIxMjEmdHh0LWZvbnQ9SGlyYWdpbm8lMjBTYW5zJTIwVzYmdHh0LXNpemU9MzYmdHh0LXBhZD0wJnM9ODVlMzIyOWJiNjA2ZTE4YzM2ZmM0MzNjMTk0ZjJkMmI%26blend-x%3D242%26blend-y%3D480%26blend-w%3D838%26blend-h%3D46%26blend-fit%3Dcrop%26blend-crop%3Dleft%252Cbottom%26blend-mode%3Dnormal%26s%3Dcef4d173a8c148726dcb539117fd44ef" alt="初学者のための正しいシェルとカーネルの概念 ~ 大学も技術者認定機関も間違いだらけ - Qiita"> </a> </div> </div> <div class="centerarticle-reaction js-user-bookmark-id-container" id="bookmark-4729366060600436164"> <div class="centerarticle-reaction-comment js-user-bookmark-comment " data-url="https://qiita.com/ko1nksm/items/935be63e940f00e4c228" data-user-name="shunt_i"> <a href="/shunt_i/" data-gtm-click-label="user-reaction-usericon" class="centerarticle-reaction-thumb"> <img src="https://cdn.profile-image.st-hatena.com/users/shunt_i/profile.png" alt="shunt_i" title="shunt_i" class="centerarticle-reaction-image"> </a> <div class="centerarticle-reaction-main"> <span class="centerarticle-reaction-username"><a href="https://b.hatena.ne.jp/shunt_i/20221213#bookmark-4729366060600436164" class="js-anchor-path" data-gtm-click-label="user-reaction-username">shunt_i</a></span> <span class="centerarticle-reaction-timestamp">2022/12/13</span> <span class="js-private-icon status is-hidden"><img src="/images/v4/public/userpage/icon-private.svg" alt="非公開" width="10px" height="10px"></span> <div class="centerarticle-reaction-main-comment-tags"> <span class="js-comment"></span> <ul class="centerarticle-reaction-tags js-tag-text"> <li><a href="/shunt_i/%E3%81%82%E3%81%A8%E3%81%A7%E8%AA%AD%E3%82%80/" data-gtm-click-label="user-reaction-tag">あとで読む</a></li> <li><a href="/shunt_i/UNIX/" data-gtm-click-label="user-reaction-tag">UNIX</a></li> <li><a href="/shunt_i/shell/" data-gtm-click-label="user-reaction-tag">shell</a></li> </ul> </div> <div class="centerarticle-reaction-foot"> <div class="centerarticle-reaction-meta"> <span class="comment-permalink js-comment-permalink"> <a href="/entry/4729366060600436164/comment/shunt_i" data-gtm-click-label="user-reaction-permalink" rel="nofollow">リンク</a> </span> <span class="list-star-container js-list-star-container"></span> <span class="twitter-click js-short-url-clicks"></span> </div> <ul class="centerarticle-reaction-menu"> <li class="js-add-star-container add-star-container"></li> </ul> </div> </div> </div> </div> <ul class="centerarticle-reaction-following js-user-following-bookmarks-icon"> </ul> <div class="js-user-following-bookmarks-detail is-hidden"> </div> </li> <li class="bookmark-item js-user-bookmark-item js-intent-share-bookmark" data-target-url="https://m-hiyama.hatenablog.com/entry/2022/12/05/122205"> <div class="centerarticle-entry is-image-entry-unit"> <h3 class="centerarticle-entry-title"> <a href="https://m-hiyama.hatenablog.com/entry/2022/12/05/122205" class="js-clickable-link js-keyboard-openable" target="_blank" rel="noopener" data-gtm-click-label="user-bookmark-title"><img class="centerarticle-entry-favicon" src="https://cdn-ak2.favicon.st-hatena.com/64?url=https%3A%2F%2Fm-hiyama.hatenablog.com%2Fentry%2F2022%2F12%2F05%2F122205" alt="">パイプライン指向JSON処理プログラミング言語 jq - 檜山正幸のキマイラ飼育記 (はてなBlog)</a> </h3> <ul class="centerarticle-entry-data"> <li> <span class="centerarticle-users"> <a href="/entry/s/m-hiyama.hatenablog.com/entry/2022/12/05/122205" class="js-keyboard-entry-page-openable" title="パイプライン指向JSON処理プログラミング言語 jq - 檜山正幸のキマイラ飼育記 (はてなBlog) (256ブックマーク)" data-gtm-click-label="user-bookmark-users">256 users</a> </span> </li> <li> <a href="/shunt_i/?url=https%3A%2F%2Fm-hiyama.hatenablog.com%2F" title="『m-hiyama.hatenablog.com』の新着エントリー" data-gtm-click-label="user-bookmark-domain"> m-hiyama.hatenablog.com </a> </li> <li><a href="/hotentry/it" data-gtm-click-label="user-bookmark-category">テクノロジー</a></li> </ul> <div class="centerarticle-entry-contents"> <p class="centerarticle-entry-summary">jq(https://stedolan.<a data-gtm-click-label="entry-summary-keyword" href="/q/github">github</a>.io/jq/)の紹介では、「JSON処理のワンライナー〈一行野郎〉としてめちゃくちゃ便利!」とアピールするのが定番です。もちろんそれは<a data-gtm-click-label="entry-summary-keyword" href="/q/%E6%9C%AC">本</a>当で、「めちゃくちゃ便利!」です。が、実は jq は、ワンライナー記述にとどまらない、かなり<a data-gtm-click-label="entry-summary-keyword" href="/q/%E6%9C%AC">本</a>格的なプログラミング言語です。 JSON処理のためのDSL〈<a data-gtm-click-label="entry-summary-keyword" href="/q/domain">Domain</a> Specific Language | 領域特化言語〉なので、汎用言語ではありません。しかし、汎用言語が備えている言語機能の一部(関数定義、モジュールシステムなど)を jq も持っています。また jq は、独特で楽しいプログラミング・パラダイム -- “パイプライン指向”に基づいて設計されています。 この記事では、ワンライナーを超えた jq の使い方と、プログラミング言語としての jq の特徴を紹介します。長い記事になってしまったので、一</p> <a href="https://m-hiyama.hatenablog.com/entry/2022/12/05/122205" class="centerarticle-entry-image" target="_blank" rel="noopener" data-gtm-click-label="user-bookmark-thumb"> <img src="https://cdn-ak-scissors.b.st-hatena.com/image/square/13c7c437ca069e143876b1287c49f9a1fc04b228/height=288;version=1;width=512/https%3A%2F%2Fwww.chimaira.org%2Fimg6%2Fpipeline-1.png" alt="パイプライン指向JSON処理プログラミング言語 jq - 檜山正幸のキマイラ飼育記 (はてなBlog)"> </a> </div> </div> <div class="centerarticle-reaction js-user-bookmark-id-container" id="bookmark-4729048850227675908"> <div class="centerarticle-reaction-comment js-user-bookmark-comment " data-url="https://m-hiyama.hatenablog.com/entry/2022/12/05/122205" data-user-name="shunt_i"> <a href="/shunt_i/" data-gtm-click-label="user-reaction-usericon" class="centerarticle-reaction-thumb"> <img src="https://cdn.profile-image.st-hatena.com/users/shunt_i/profile.png" alt="shunt_i" title="shunt_i" class="centerarticle-reaction-image"> </a> <div class="centerarticle-reaction-main"> <span class="centerarticle-reaction-username"><a href="https://b.hatena.ne.jp/shunt_i/20221205#bookmark-4729048850227675908" class="js-anchor-path" data-gtm-click-label="user-reaction-username">shunt_i</a></span> <span class="centerarticle-reaction-timestamp">2022/12/05</span> <span class="js-private-icon status is-hidden"><img src="/images/v4/public/userpage/icon-private.svg" alt="非公開" width="10px" height="10px"></span> <div class="centerarticle-reaction-main-comment-tags"> <span class="js-comment"></span> <ul class="centerarticle-reaction-tags js-tag-text"> <li><a href="/shunt_i/UNIX/" data-gtm-click-label="user-reaction-tag">UNIX</a></li> <li><a href="/shunt_i/shell/" data-gtm-click-label="user-reaction-tag">shell</a></li> </ul> </div> <div class="centerarticle-reaction-foot"> <div class="centerarticle-reaction-meta"> <span class="comment-permalink js-comment-permalink"> <a href="/entry/4729048850227675908/comment/shunt_i" data-gtm-click-label="user-reaction-permalink" rel="nofollow">リンク</a> </span> <span class="list-star-container js-list-star-container"></span> <span class="twitter-click js-short-url-clicks"></span> </div> <ul class="centerarticle-reaction-menu"> <li class="js-add-star-container add-star-container"></li> </ul> </div> </div> </div> </div> <ul class="centerarticle-reaction-following js-user-following-bookmarks-icon"> </ul> <div class="js-user-following-bookmarks-detail is-hidden"> </div> </li> <li class="bookmark-item js-user-bookmark-item js-intent-share-bookmark" data-target-url="https://qiita.com/ko1nksm/items/46fa9df8031275c7dc0a"> <div class="centerarticle-entry is-image-entry-unit"> <h3 class="centerarticle-entry-title"> <a href="https://qiita.com/ko1nksm/items/46fa9df8031275c7dc0a" class="js-clickable-link js-keyboard-openable" target="_blank" rel="noopener" data-gtm-click-label="user-bookmark-title"><img class="centerarticle-entry-favicon" src="https://cdn-ak2.favicon.st-hatena.com/64?url=https%3A%2F%2Fqiita.com%2Fko1nksm%2Fitems%2F46fa9df8031275c7dc0a" alt="">今どきのシェルスクリプトは数値計算にexprを使わない(POSIX準拠) - Qiita</a> </h3> <ul class="centerarticle-entry-data"> <li> <span class="centerarticle-users"> <a href="/entry/s/qiita.com/ko1nksm/items/46fa9df8031275c7dc0a" class="js-keyboard-entry-page-openable" title="今どきのシェルスクリプトは数値計算にexprを使わない(POSIX準拠) - Qiita (222ブックマーク)" data-gtm-click-label="user-bookmark-users">222 users</a> </span> </li> <li> <a href="/shunt_i/?url=https%3A%2F%2Fqiita.com%2Fko1nksm" title="『qiita.com/ko1nksm』の新着エントリー" data-gtm-click-label="user-bookmark-domain"> qiita.com/ko1nksm </a> </li> <li><a href="/hotentry/it" data-gtm-click-label="user-bookmark-category">テクノロジー</a></li> </ul> <div class="centerarticle-entry-contents"> <p class="centerarticle-entry-summary">はじめに 1992 年に POSIX でシェルが標準化されて以来、シェルスクリプトの数値計算に expr コマンドは使いません。expr コマンドを使って計算していたのは Bourne シェル(古い UNIX の sh)時代の話で、現在の POSIX sh (dash、bash、ksh 等)時代では数値計算に expr コマンドは不要です。今どきはシェルの機能だけで整数の計算を行うことができます。「今どき」って一体いつからだって話なわけですが……。 注意 シェルスクリプトでパフォーマンスの話をするとすぐに「他の言語で〜」という方がいますが、私はどんなことにでもシェルスクリプトを使えなんて一言も言っていません。パフォーマンスを気にしている理由は、そこが実際にシェルスクリプトのボトルネックになるポイントだからです。そもそもシェルスクリプトと一般的な言語は言語設計レベルで得意なことが違います。ユ</p> <a href="https://qiita.com/ko1nksm/items/46fa9df8031275c7dc0a" class="centerarticle-entry-image" target="_blank" rel="noopener" data-gtm-click-label="user-bookmark-thumb"> <img src="https://cdn-ak-scissors.b.st-hatena.com/image/square/a43cff19338a1eac52b1eb6f0c532b4f65f63de5/height=288;version=1;width=512/https%3A%2F%2Fqiita-user-contents.imgix.net%2Fhttps%253A%252F%252Fcdn.qiita.com%252Fassets%252Fpublic%252Farticle-ogp-background-412672c5f0600ab9a64263b751f1bc81.png%3Fixlib%3Drb-4.0.0%26w%3D1200%26mark64%3DaHR0cHM6Ly9xaWl0YS11c2VyLWNvbnRlbnRzLmltZ2l4Lm5ldC9-dGV4dD9peGxpYj1yYi00LjAuMCZ3PTk3MiZoPTM3OCZ0eHQ9JUU0JUJCJThBJUUzJTgxJUE5JUUzJTgxJThEJUUzJTgxJUFFJUUzJTgyJUI3JUUzJTgyJUE3JUUzJTgzJUFCJUUzJTgyJUI5JUUzJTgyJUFGJUUzJTgzJUFBJUUzJTgzJTk3JUUzJTgzJTg4JUUzJTgxJUFGJUU2JTk1JUIwJUU1JTgwJUE0JUU4JUE4JTg4JUU3JUFFJTk3JUUzJTgxJUFCZXhwciVFMyU4MiU5MiVFNCVCRCVCRiVFMyU4MiU4RiVFMyU4MSVBQSVFMyU4MSU4NCVFRiVCQyU4OFBPU0lYJUU2JUJBJTk2JUU2JThCJUEwJUVGJUJDJTg5JnR4dC1hbGlnbj1sZWZ0JTJDdG9wJnR4dC1jb2xvcj0lMjMxRTIxMjEmdHh0LWZvbnQ9SGlyYWdpbm8lMjBTYW5zJTIwVzYmdHh0LXNpemU9NTYmcz1hYTExMjM2MDc0ZDdjNmM0YjE0ODg1Nzk5YmQ3MDY5Yw%26mark-x%3D142%26mark-y%3D57%26blend64%3DaHR0cHM6Ly9xaWl0YS11c2VyLWNvbnRlbnRzLmltZ2l4Lm5ldC9-dGV4dD9peGxpYj1yYi00LjAuMCZoPTc2Jnc9NzcwJnR4dD0lNDBrbzFua3NtJnR4dC1jb2xvcj0lMjMxRTIxMjEmdHh0LWZvbnQ9SGlyYWdpbm8lMjBTYW5zJTIwVzYmdHh0LXNpemU9MzYmdHh0LWFsaWduPWxlZnQlMkN0b3Amcz0zNDA2OWFjMTI5MDIyYmE1ZjY0OTI5ZGU2ZGUwNDU5Zg%26blend-x%3D142%26blend-y%3D486%26blend-mode%3Dnormal%26s%3Db0673a13cb055610f23f1f6cc8a92e86" alt="今どきのシェルスクリプトは数値計算にexprを使わない(POSIX準拠) - Qiita"> </a> </div> </div> <div class="centerarticle-reaction js-user-bookmark-id-container" id="bookmark-4726353387792929315"> <div class="centerarticle-reaction-comment js-user-bookmark-comment " data-url="https://qiita.com/ko1nksm/items/46fa9df8031275c7dc0a" data-user-name="shunt_i"> <a href="/shunt_i/" data-gtm-click-label="user-reaction-usericon" class="centerarticle-reaction-thumb"> <img src="https://cdn.profile-image.st-hatena.com/users/shunt_i/profile.png" alt="shunt_i" title="shunt_i" class="centerarticle-reaction-image"> </a> <div class="centerarticle-reaction-main"> <span class="centerarticle-reaction-username"><a href="https://b.hatena.ne.jp/shunt_i/20221008#bookmark-4726353387792929315" class="js-anchor-path" data-gtm-click-label="user-reaction-username">shunt_i</a></span> <span class="centerarticle-reaction-timestamp">2022/10/08</span> <span class="js-private-icon status is-hidden"><img src="/images/v4/public/userpage/icon-private.svg" alt="非公開" width="10px" height="10px"></span> <div class="centerarticle-reaction-main-comment-tags"> <span class="js-comment"></span> <ul class="centerarticle-reaction-tags js-tag-text"> <li><a href="/shunt_i/shell/" data-gtm-click-label="user-reaction-tag">shell</a></li> </ul> </div> <div class="centerarticle-reaction-foot"> <div class="centerarticle-reaction-meta"> <span class="comment-permalink js-comment-permalink"> <a href="/entry/4726353387792929315/comment/shunt_i" data-gtm-click-label="user-reaction-permalink" rel="nofollow">リンク</a> </span> <span class="list-star-container js-list-star-container"></span> <span class="twitter-click js-short-url-clicks"></span> </div> <ul class="centerarticle-reaction-menu"> <li class="js-add-star-container add-star-container"></li> </ul> </div> </div> </div> </div> <ul class="centerarticle-reaction-following js-user-following-bookmarks-icon"> </ul> <div class="js-user-following-bookmarks-detail is-hidden"> </div> </li> <li class="bookmark-item js-user-bookmark-item js-intent-share-bookmark" data-target-url="https://qiita.com/ko1nksm/items/0fa2f73dd6d9822518a3"> <div class="centerarticle-entry is-image-entry-unit"> <h3 class="centerarticle-entry-title"> <a href="https://qiita.com/ko1nksm/items/0fa2f73dd6d9822518a3" class="js-clickable-link js-keyboard-openable" target="_blank" rel="noopener" data-gtm-click-label="user-bookmark-title"><img class="centerarticle-entry-favicon" src="https://cdn-ak2.favicon.st-hatena.com/64?url=https%3A%2F%2Fqiita.com%2Fko1nksm%2Fitems%2F0fa2f73dd6d9822518a3" alt="">名著「入門UNIXシェルプログラミング」の超詳細なレビューをしてみた(古い内容の訂正) - Qiita</a> </h3> <ul class="centerarticle-entry-data"> <li> <span class="centerarticle-users"> <a href="/entry/s/qiita.com/ko1nksm/items/0fa2f73dd6d9822518a3" class="js-keyboard-entry-page-openable" title="名著「入門UNIXシェルプログラミング」の超詳細なレビューをしてみた(古い内容の訂正) - Qiita (408ブックマーク)" data-gtm-click-label="user-bookmark-users">408 users</a> </span> </li> <li> <a href="/shunt_i/?url=https%3A%2F%2Fqiita.com%2Fko1nksm" title="『qiita.com/ko1nksm』の新着エントリー" data-gtm-click-label="user-bookmark-domain"> qiita.com/ko1nksm </a> </li> <li><a href="/hotentry/it" data-gtm-click-label="user-bookmark-category">テクノロジー</a></li> </ul> <div class="centerarticle-entry-contents"> <p class="centerarticle-entry-summary">Deleted art<a data-gtm-click-label="entry-summary-keyword" href="/q/ICL">icl</a>es cannot be recovered. Draft of this art<a data-gtm-click-label="entry-summary-keyword" href="/q/ICL">icl</a>e would be also deleted. Are you sure you want to delete this art<a data-gtm-click-label="entry-summary-keyword" href="/q/ICL">icl</a>e? はじめに そりゃまあ 30 年も経てば古くなりますよ。「入門UNIXシェルプログラミング」は今もシェルスクリプトに関するオススメの<a data-gtm-click-label="entry-summary-keyword" href="/q/%E6%9C%AC">本</a>として名前が挙がる名著です。しかしこの<a data-gtm-click-label="entry-summary-keyword" href="/q/%E6%9C%AC">本</a>は古い<a data-gtm-click-label="entry-summary-keyword" href="/q/%E6%9C%AC">本</a>です。POSIX でシェルが標準化される以前の<a data-gtm-click-label="entry-summary-keyword" href="/q/%E6%9C%AC">本</a>で、内容から判断するとおそらく 1990 年ぐらいの常識に基づいて書かれています。 古いから参考にならないと言<a data-gtm-click-label="entry-summary-keyword" href="/q/%E3%81%86%E3%81%A4">うつ</a>もりはありません。しかしどれだけ優れた<a data-gtm-click-label="entry-summary-keyword" href="/q/%E6%9C%AC">本</a>でも時間の流れには勝てません。良書であると思っているからこそ、古くなってしまった内容は訂正する必要があると考えています。なおシェルスクリプトに関する古い<a data-gtm-click-label="entry-summary-keyword" href="/q/%E6%9C%AC">本</a>はこれ</p> <a href="https://qiita.com/ko1nksm/items/0fa2f73dd6d9822518a3" class="centerarticle-entry-image" target="_blank" rel="noopener" data-gtm-click-label="user-bookmark-thumb"> <img src="https://cdn-ak-scissors.b.st-hatena.com/image/square/5f30328388e632b8298b8dad9b2ef998b44be03d/height=288;version=1;width=512/https%3A%2F%2Fqiita-user-contents.imgix.net%2Fhttps%253A%252F%252Fqiita-user-contents.imgix.net%252Fhttps%25253A%25252F%25252Fcdn.qiita.com%25252Fassets%25252Fpublic%25252Farticle-ogp-background-afbab5eb44e0b055cce1258705637a91.png%253Fixlib%253Drb-4.0.0%2526w%253D1200%2526blend64%253DaHR0cHM6Ly9xaWl0YS11c2VyLXByb2ZpbGUtaW1hZ2VzLmltZ2l4Lm5ldC9odHRwcyUzQSUyRiUyRnFpaXRhLWltYWdlLXN0b3JlLnMzLmFtYXpvbmF3cy5jb20lMkYwJTJGNTQ5MTglMkZwcm9maWxlLWltYWdlcyUyRjE0NzM2OTM1Mjg_aXhsaWI9cmItNC4wLjAmYXI9MSUzQTEmZml0PWNyb3AmbWFzaz1lbGxpcHNlJmZtPXBuZzMyJnM9YjQzZjY0ZGMzZWVjY2UyZTY1MGQ4NTRlNzk3ZDI2NGQ%2526blend-x%253D120%2526blend-y%253D467%2526blend-w%253D82%2526blend-h%253D82%2526blend-mode%253Dnormal%2526s%253D8fcfde890a56b8fea74f53d87eeef4e6%3Fixlib%3Drb-4.0.0%26w%3D1200%26fm%3Djpg%26mark64%3DaHR0cHM6Ly9xaWl0YS11c2VyLWNvbnRlbnRzLmltZ2l4Lm5ldC9-dGV4dD9peGxpYj1yYi00LjAuMCZ3PTk2MCZoPTMyNCZ0eHQ9JUU1JTkwJThEJUU4JTkxJTk3JUUzJTgwJThDJUU1JTg1JUE1JUU5JTk2JTgwVU5JWCVFMyU4MiVCNyVFMyU4MiVBNyVFMyU4MyVBQiVFMyU4MyU5NyVFMyU4MyVBRCVFMyU4MiVCMCVFMyU4MyVBOSVFMyU4MyU5RiVFMyU4MyVCMyVFMyU4MiVCMCVFMyU4MCU4RCVFMyU4MSVBRSVFOCVCNiU4NSVFOCVBOSVCMyVFNyVCNCVCMCVFMyU4MSVBQSVFMyU4MyVBQyVFMyU4MyU5MyVFMyU4MyVBNSVFMyU4MyVCQyVFMyU4MiU5MiVFMyU4MSU5NyVFMyU4MSVBNiVFMyU4MSVCRiVFMyU4MSU5RiVFRiVCQyU4OCVFNSU4RiVBNCVFMyU4MSU4NCVFNSU4NiU4NSVFNSVBRSVCOSVFMyU4MSVBRSVFOCVBOCU4MiVFNiVBRCVBMyVFRiVCQyU4OSZ0eHQtYWxpZ249bGVmdCUyQ3RvcCZ0eHQtY29sb3I9JTIzMUUyMTIxJnR4dC1mb250PUhpcmFnaW5vJTIwU2FucyUyMFc2JnR4dC1zaXplPTU2JnR4dC1wYWQ9MCZzPTFhYWI2NGZkYmMwZDY3MmNhMDNiNWU3N2QxNGFiZTU0%26mark-x%3D120%26mark-y%3D112%26blend64%3DaHR0cHM6Ly9xaWl0YS11c2VyLWNvbnRlbnRzLmltZ2l4Lm5ldC9-dGV4dD9peGxpYj1yYi00LjAuMCZ3PTgzOCZoPTU4JnR4dD0lNDBrbzFua3NtJnR4dC1jb2xvcj0lMjMxRTIxMjEmdHh0LWZvbnQ9SGlyYWdpbm8lMjBTYW5zJTIwVzYmdHh0LXNpemU9MzYmdHh0LXBhZD0wJnM9ODVlMzIyOWJiNjA2ZTE4YzM2ZmM0MzNjMTk0ZjJkMmI%26blend-x%3D242%26blend-y%3D480%26blend-w%3D838%26blend-h%3D46%26blend-fit%3Dcrop%26blend-crop%3Dleft%252Cbottom%26blend-mode%3Dnormal%26s%3Dc69b00a13c5a39a743b26cbe9572e809" alt="名著「入門UNIXシェルプログラミング」の超詳細なレビューをしてみた(古い内容の訂正) - Qiita"> </a> </div> </div> <div class="centerarticle-reaction js-user-bookmark-id-container" id="bookmark-4721222214009868770"> <div class="centerarticle-reaction-comment js-user-bookmark-comment " data-url="https://qiita.com/ko1nksm/items/0fa2f73dd6d9822518a3" data-user-name="shunt_i"> <a href="/shunt_i/" data-gtm-click-label="user-reaction-usericon" class="centerarticle-reaction-thumb"> <img src="https://cdn.profile-image.st-hatena.com/users/shunt_i/profile.png" alt="shunt_i" title="shunt_i" class="centerarticle-reaction-image"> </a> <div class="centerarticle-reaction-main"> <span class="centerarticle-reaction-username"><a href="https://b.hatena.ne.jp/shunt_i/20220620#bookmark-4721222214009868770" class="js-anchor-path" data-gtm-click-label="user-reaction-username">shunt_i</a></span> <span class="centerarticle-reaction-timestamp">2022/06/20</span> <span class="js-private-icon status is-hidden"><img src="/images/v4/public/userpage/icon-private.svg" alt="非公開" width="10px" height="10px"></span> <div class="centerarticle-reaction-main-comment-tags"> <span class="js-comment"></span> <ul class="centerarticle-reaction-tags js-tag-text"> <li><a href="/shunt_i/shell/" data-gtm-click-label="user-reaction-tag">shell</a></li> </ul> </div> <div class="centerarticle-reaction-foot"> <div class="centerarticle-reaction-meta"> <span class="comment-permalink js-comment-permalink"> <a href="/entry/4721222214009868770/comment/shunt_i" data-gtm-click-label="user-reaction-permalink" rel="nofollow">リンク</a> </span> <span class="list-star-container js-list-star-container"></span> <span class="twitter-click js-short-url-clicks"></span> </div> <ul class="centerarticle-reaction-menu"> <li class="js-add-star-container add-star-container"></li> </ul> </div> </div> </div> </div> <ul class="centerarticle-reaction-following js-user-following-bookmarks-icon"> </ul> <div class="js-user-following-bookmarks-detail is-hidden"> </div> </li> <li class="bookmark-item js-user-bookmark-item js-intent-share-bookmark" data-target-url="https://qiita.com/autotaker1984/items/bc758fcf368c1a167353"> <div class="centerarticle-entry is-image-entry-unit"> <h3 class="centerarticle-entry-title"> <a href="https://qiita.com/autotaker1984/items/bc758fcf368c1a167353" class="js-clickable-link js-keyboard-openable" target="_blank" rel="noopener" data-gtm-click-label="user-bookmark-title"><img class="centerarticle-entry-favicon" src="https://cdn-ak2.favicon.st-hatena.com/64?url=https%3A%2F%2Fqiita.com%2Fautotaker1984%2Fitems%2Fbc758fcf368c1a167353" alt="">Bash Scriptの作法 - Qiita</a> </h3> <ul class="centerarticle-entry-data"> <li> <span class="centerarticle-users"> <a href="/entry/s/qiita.com/autotaker1984/items/bc758fcf368c1a167353" class="js-keyboard-entry-page-openable" title="Bash Scriptの作法 - Qiita (410ブックマーク)" data-gtm-click-label="user-bookmark-users">410 users</a> </span> </li> <li> <a href="/shunt_i/?url=https%3A%2F%2Fqiita.com%2Fautotaker1984" title="『qiita.com/autotaker1984』の新着エントリー" data-gtm-click-label="user-bookmark-domain"> qiita.com/autotaker1984 </a> </li> <li><a href="/hotentry/it" data-gtm-click-label="user-bookmark-category">テクノロジー</a></li> </ul> <div class="centerarticle-entry-contents"> <p class="centerarticle-entry-summary">はじめに チーム開発でシェルスクリプト(特にBash Script)を書く際に守るべきルールをまとめます。 シェルスクリプトの<a data-gtm-click-label="entry-summary-keyword" href="/q/%E3%82%B3%E3%83%BC%E3%83%89%E3%83%AC%E3%83%93%E3%83%A5%E3%83%BC">コードレビュー</a>をする際等にお役立てください。 スクリプト名 -区切りの小文字英数字(いわゆるkebab-case)をつける。拡張子は.sh. これは特に理由があるわけではないので_区切りでもよいし、チーム内にzshやfish等の他Shell愛好家がいる場合は拡張子は.bashでも良い。どちらにせよチーム内では統一しておかないと混乱の元となる。 改行コード LFを使用する。CRLFだと動作しないので書く際に間違うことはないが、<a data-gtm-click-label="entry-summary-keyword" href="/q/Windows">Windows</a>上のg<a data-gtm-click-label="entry-summary-keyword" href="/q/it">it</a>のautocrlf設定によってはご丁寧にCRLFでチェックアウトされてしまう。 避けるためにはg<a data-gtm-click-label="entry-summary-keyword" href="/q/it">it</a> config --global core.autocrlf inputとするか、.g<a data-gtm-click-label="entry-summary-keyword" href="/q/it">it</a>attributesをレポジトリ</p> <a href="https://qiita.com/autotaker1984/items/bc758fcf368c1a167353" class="centerarticle-entry-image" target="_blank" rel="noopener" data-gtm-click-label="user-bookmark-thumb"> <img src="https://cdn-ak-scissors.b.st-hatena.com/image/square/cc9a7f0d578ca2a5e63a79dd8305bc5f16b20df7/height=288;version=1;width=512/https%3A%2F%2Fqiita-user-contents.imgix.net%2Fhttps%253A%252F%252Fcdn.qiita.com%252Fassets%252Fpublic%252Farticle-ogp-background-412672c5f0600ab9a64263b751f1bc81.png%3Fixlib%3Drb-4.0.0%26w%3D1200%26mark64%3DaHR0cHM6Ly9xaWl0YS11c2VyLWNvbnRlbnRzLmltZ2l4Lm5ldC9-dGV4dD9peGxpYj1yYi00LjAuMCZ3PTk3MiZoPTM3OCZ0eHQ9QmFzaCUyMFNjcmlwdCVFMyU4MSVBRSVFNCVCRCU5QyVFNiVCMyU5NSZ0eHQtYWxpZ249bGVmdCUyQ3RvcCZ0eHQtY29sb3I9JTIzMUUyMTIxJnR4dC1mb250PUhpcmFnaW5vJTIwU2FucyUyMFc2JnR4dC1zaXplPTU2JnM9YTdkYjA2NTY5MmY2MDRjNjYyNDkzZGJkMTYxODQ4NGI%26mark-x%3D142%26mark-y%3D57%26blend64%3DaHR0cHM6Ly9xaWl0YS11c2VyLWNvbnRlbnRzLmltZ2l4Lm5ldC9-dGV4dD9peGxpYj1yYi00LjAuMCZoPTc2Jnc9NzcwJnR4dD0lNDBhdXRvdGFrZXIxOTg0JnR4dC1jb2xvcj0lMjMxRTIxMjEmdHh0LWZvbnQ9SGlyYWdpbm8lMjBTYW5zJTIwVzYmdHh0LXNpemU9MzYmdHh0LWFsaWduPWxlZnQlMkN0b3Amcz0xN2FlYzhkNTIwZGFiODMxY2E5YWRjYjZkMTVlOTAyMg%26blend-x%3D142%26blend-y%3D436%26blend-mode%3Dnormal%26txt64%3DaW4g5qCq5byP5Lya56S-V29ya3MgSHVtYW4gSW50ZWxsaWdlbmNl%26txt-width%3D770%26txt-clip%3Dend%252Cellipsis%26txt-color%3D%25231E2121%26txt-font%3DHiragino%2520Sans%2520W6%26txt-size%3D36%26txt-x%3D156%26txt-y%3D536%26s%3Ddaee9d4af55a2650a0135f0052ac0244" alt="Bash Scriptの作法 - Qiita"> </a> </div> </div> <div class="centerarticle-reaction js-user-bookmark-id-container" id="bookmark-4708588232036097474"> <div class="centerarticle-reaction-comment js-user-bookmark-comment " data-url="https://qiita.com/autotaker1984/items/bc758fcf368c1a167353" data-user-name="shunt_i"> <a href="/shunt_i/" data-gtm-click-label="user-reaction-usericon" class="centerarticle-reaction-thumb"> <img src="https://cdn.profile-image.st-hatena.com/users/shunt_i/profile.png" alt="shunt_i" title="shunt_i" class="centerarticle-reaction-image"> </a> <div class="centerarticle-reaction-main"> <span class="centerarticle-reaction-username"><a href="https://b.hatena.ne.jp/shunt_i/20210927#bookmark-4708588232036097474" class="js-anchor-path" data-gtm-click-label="user-reaction-username">shunt_i</a></span> <span class="centerarticle-reaction-timestamp">2021/09/27</span> <span class="js-private-icon status is-hidden"><img src="/images/v4/public/userpage/icon-private.svg" alt="非公開" width="10px" height="10px"></span> <div class="centerarticle-reaction-main-comment-tags"> <span class="js-comment"></span> <ul class="centerarticle-reaction-tags js-tag-text"> <li><a href="/shunt_i/shell/" data-gtm-click-label="user-reaction-tag">shell</a></li> </ul> </div> <div class="centerarticle-reaction-foot"> <div class="centerarticle-reaction-meta"> <span class="comment-permalink js-comment-permalink"> <a href="/entry/4708588232036097474/comment/shunt_i" data-gtm-click-label="user-reaction-permalink" rel="nofollow">リンク</a> </span> <span class="list-star-container js-list-star-container"></span> <span class="twitter-click js-short-url-clicks"></span> </div> <ul class="centerarticle-reaction-menu"> <li class="js-add-star-container add-star-container"></li> </ul> </div> </div> </div> </div> <ul class="centerarticle-reaction-following js-user-following-bookmarks-icon"> </ul> <div class="js-user-following-bookmarks-detail is-hidden"> </div> </li> <li class="bookmark-item js-user-bookmark-item js-intent-share-bookmark" data-target-url="https://tldp.org/LDP/abs/html/exitcodes.html"> <div class="centerarticle-entry "> <h3 class="centerarticle-entry-title"> <a href="https://tldp.org/LDP/abs/html/exitcodes.html" class="js-clickable-link js-keyboard-openable" target="_blank" rel="noopener" data-gtm-click-label="user-bookmark-title"><img class="centerarticle-entry-favicon" src="https://cdn-ak2.favicon.st-hatena.com/64?url=https%3A%2F%2Ftldp.org%2FLDP%2Fabs%2Fhtml%2Fexitcodes.html" alt="">Exit Codes With Special Meanings</a> </h3> <ul class="centerarticle-entry-data"> <li> <span class="centerarticle-users"> <a href="/entry/s/tldp.org/LDP/abs/html/exitcodes.html" class="js-keyboard-entry-page-openable" title="Exit Codes With Special Meanings (35ブックマーク)" data-gtm-click-label="user-bookmark-users">35 users</a> </span> </li> <li> <a href="/shunt_i/?url=https%3A%2F%2Ftldp.org%2F" title="『tldp.org』の新着エントリー" data-gtm-click-label="user-bookmark-domain"> tldp.org </a> </li> <li><a href="/hotentry/it" data-gtm-click-label="user-bookmark-category">テクノロジー</a></li> </ul> <div class="centerarticle-entry-contents"> <p class="centerarticle-entry-summary">Ta<a data-gtm-click-label="entry-summary-keyword" href="/q/BL">bl</a>e E-1. Reserved Ex<a data-gtm-click-label="entry-summary-keyword" href="/q/it">it</a> Codes Ex<a data-gtm-click-label="entry-summary-keyword" href="/q/it">it</a> Code Numbe<a data-gtm-click-label="entry-summary-keyword" href="/q/RME">rMe</a>aningExampleComments</p> </div> </div> <div class="centerarticle-reaction js-user-bookmark-id-container" id="bookmark-4694406304843614050"> <div class="centerarticle-reaction-comment js-user-bookmark-comment " data-url="https://tldp.org/LDP/abs/html/exitcodes.html" data-user-name="shunt_i"> <a href="/shunt_i/" data-gtm-click-label="user-reaction-usericon" class="centerarticle-reaction-thumb"> <img src="https://cdn.profile-image.st-hatena.com/users/shunt_i/profile.png" alt="shunt_i" title="shunt_i" class="centerarticle-reaction-image"> </a> <div class="centerarticle-reaction-main"> <span class="centerarticle-reaction-username"><a href="https://b.hatena.ne.jp/shunt_i/20210731#bookmark-4694406304843614050" class="js-anchor-path" data-gtm-click-label="user-reaction-username">shunt_i</a></span> <span class="centerarticle-reaction-timestamp">2021/07/31</span> <span class="js-private-icon status is-hidden"><img src="/images/v4/public/userpage/icon-private.svg" alt="非公開" width="10px" height="10px"></span> <div class="centerarticle-reaction-main-comment-tags"> <span class="js-comment">“Exit Codes”</span> <ul class="centerarticle-reaction-tags js-tag-text"> <li><a href="/shunt_i/shell/" data-gtm-click-label="user-reaction-tag">shell</a></li> <li><a href="/shunt_i/UNIX/" data-gtm-click-label="user-reaction-tag">UNIX</a></li> <li><a href="/shunt_i/%E3%83%97%E3%83%AD%E3%82%B0%E3%83%A9%E3%83%9F%E3%83%B3%E3%82%B0/" data-gtm-click-label="user-reaction-tag">プログラミング</a></li> </ul> </div> <div class="centerarticle-reaction-foot"> <div class="centerarticle-reaction-meta"> <span class="comment-permalink js-comment-permalink"> <a href="/entry/4694406304843614050/comment/shunt_i" data-gtm-click-label="user-reaction-permalink" rel="nofollow">リンク</a> </span> <span class="list-star-container js-list-star-container"></span> <span class="twitter-click js-short-url-clicks"></span> </div> <ul class="centerarticle-reaction-menu"> <li class="js-add-star-container add-star-container"></li> </ul> </div> </div> </div> </div> <ul class="centerarticle-reaction-following js-user-following-bookmarks-icon"> </ul> <div class="js-user-following-bookmarks-detail is-hidden"> </div> </li> <li class="bookmark-item js-user-bookmark-item js-intent-share-bookmark" data-target-url="https://qiita.com/ko1nksm/items/fbefb4da7e54e8a29a25"> <div class="centerarticle-entry is-image-entry-unit"> <h3 class="centerarticle-entry-title"> <a href="https://qiita.com/ko1nksm/items/fbefb4da7e54e8a29a25" class="js-clickable-link js-keyboard-openable" target="_blank" rel="noopener" data-gtm-click-label="user-bookmark-title"><img class="centerarticle-entry-favicon" src="https://cdn-ak2.favicon.st-hatena.com/64?url=https%3A%2F%2Fqiita.com%2Fko1nksm%2Fitems%2Ffbefb4da7e54e8a29a25" alt="">シェルスクリプト リファクタリング ~遅いシェルスクリプトが供養されてたので蘇生して256倍に高速化させました~ - Qiita</a> </h3> <ul class="centerarticle-entry-data"> <li> <span class="centerarticle-users"> <a href="/entry/s/qiita.com/ko1nksm/items/fbefb4da7e54e8a29a25" class="js-keyboard-entry-page-openable" title="シェルスクリプト リファクタリング ~遅いシェルスクリプトが供養されてたので蘇生して256倍に高速化させました~ - Qiita (297ブックマーク)" data-gtm-click-label="user-bookmark-users">297 users</a> </span> </li> <li> <a href="/shunt_i/?url=https%3A%2F%2Fqiita.com%2Fko1nksm" title="『qiita.com/ko1nksm』の新着エントリー" data-gtm-click-label="user-bookmark-domain"> qiita.com/ko1nksm </a> </li> <li><a href="/hotentry/it" data-gtm-click-label="user-bookmark-category">テクノロジー</a></li> </ul> <div class="centerarticle-entry-contents"> <p class="centerarticle-entry-summary">はじめに ことの始まりは「シェルスクリプトでツールを作ったけど速度が遅くて使い物にならなかったので供養」というツイートを見たからです。コードを見てみると、実例をあまり見ないシェルスクリプトのリファクタリング例として丁度良い内容と分量だったため記事にいたしました。記事を書くにあたりコードの利用を快く承諾していただいた @Hayao0819 様にはこの場を借りて御礼を申し上げます。 内容は章立てで構成しており、序章で事前調査をし、第一章で一般的なリファクタリング、第二章でパフォーマンスを重視したリファクタリング、終章で少し余談をして締めくくっています。最初はパイプは並列処理されるから速くなるというのは神話(そうとは限らない)についても書いていたのですが流石に長いので分けました。それでも書きたいことを色々書いていたらめちゃくちゃ長くなってしまいましたので読み物として私がどんなことを考えながらリフ</p> <a href="https://qiita.com/ko1nksm/items/fbefb4da7e54e8a29a25" class="centerarticle-entry-image" target="_blank" rel="noopener" data-gtm-click-label="user-bookmark-thumb"> <img src="https://cdn-ak-scissors.b.st-hatena.com/image/square/02cee21b860bc38622b9c6f9562437720eb8909c/height=288;version=1;width=512/https%3A%2F%2Fqiita-user-contents.imgix.net%2Fhttps%253A%252F%252Fcdn.qiita.com%252Fassets%252Fpublic%252Farticle-ogp-background-412672c5f0600ab9a64263b751f1bc81.png%3Fixlib%3Drb-4.0.0%26w%3D1200%26mark64%3DaHR0cHM6Ly9xaWl0YS11c2VyLWNvbnRlbnRzLmltZ2l4Lm5ldC9-dGV4dD9peGxpYj1yYi00LjAuMCZ3PTk3MiZoPTM3OCZ0eHQ9JUUzJTgyJUI3JUUzJTgyJUE3JUUzJTgzJUFCJUUzJTgyJUI5JUUzJTgyJUFGJUUzJTgzJUFBJUUzJTgzJTk3JUUzJTgzJTg4JTIwJUUzJTgzJUFBJUUzJTgzJTk1JUUzJTgyJUExJUUzJTgyJUFGJUUzJTgyJUJGJUUzJTgzJUFBJUUzJTgzJUIzJUUzJTgyJUIwJTIwJUVGJUJEJTlFJUU5JTgxJTg1JUUzJTgxJTg0JUUzJTgyJUI3JUUzJTgyJUE3JUUzJTgzJUFCJUUzJTgyJUI5JUUzJTgyJUFGJUUzJTgzJUFBJUUzJTgzJTk3JUUzJTgzJTg4JUUzJTgxJThDJUU0JUJFJTlCJUU5JUE0JThBJUUzJTgxJTk1JUUzJTgyJThDJUUzJTgxJUE2JUUzJTgxJTlGJUUzJTgxJUFFJUUzJTgxJUE3JUU4JTk4JTg3JUU3JTk0JTlGJUUzJTgxJTk3JUUzJTgxJUE2MjU2JUU1JTgwJThEJUUzJTgxJUFCJUU5JUFCJTk4JUU5JTgwJTlGJUU1JThDJTk2JUUzJTgxJTk1JUUzJTgxJTlCJUUyJTgwJUE2JnR4dC1hbGlnbj1sZWZ0JTJDdG9wJnR4dC1jb2xvcj0lMjMxRTIxMjEmdHh0LWZvbnQ9SGlyYWdpbm8lMjBTYW5zJTIwVzYmdHh0LXNpemU9NTYmcz03MjI1ZWQ4YWFjNmM3OTQ5Njc4NDM0MzdhZWJmYjU3OQ%26mark-x%3D142%26mark-y%3D57%26blend64%3DaHR0cHM6Ly9xaWl0YS11c2VyLWNvbnRlbnRzLmltZ2l4Lm5ldC9-dGV4dD9peGxpYj1yYi00LjAuMCZoPTc2Jnc9NzcwJnR4dD0lNDBrbzFua3NtJnR4dC1jb2xvcj0lMjMxRTIxMjEmdHh0LWZvbnQ9SGlyYWdpbm8lMjBTYW5zJTIwVzYmdHh0LXNpemU9MzYmdHh0LWFsaWduPWxlZnQlMkN0b3Amcz0zNDA2OWFjMTI5MDIyYmE1ZjY0OTI5ZGU2ZGUwNDU5Zg%26blend-x%3D142%26blend-y%3D486%26blend-mode%3Dnormal%26s%3D4d4994e49e850364f44edab1abf6920a" alt="シェルスクリプト リファクタリング ~遅いシェルスクリプトが供養されてたので蘇生して256倍に高速化させました~ - Qiita"> </a> </div> </div> <div class="centerarticle-reaction js-user-bookmark-id-container" id="bookmark-4702189066267008162"> <div class="centerarticle-reaction-comment js-user-bookmark-comment " data-url="https://qiita.com/ko1nksm/items/fbefb4da7e54e8a29a25" data-user-name="shunt_i"> <a href="/shunt_i/" data-gtm-click-label="user-reaction-usericon" class="centerarticle-reaction-thumb"> <img src="https://cdn.profile-image.st-hatena.com/users/shunt_i/profile.png" alt="shunt_i" title="shunt_i" class="centerarticle-reaction-image"> </a> <div class="centerarticle-reaction-main"> <span class="centerarticle-reaction-username"><a href="https://b.hatena.ne.jp/shunt_i/20210509#bookmark-4702189066267008162" class="js-anchor-path" data-gtm-click-label="user-reaction-username">shunt_i</a></span> <span class="centerarticle-reaction-timestamp">2021/05/09</span> <span class="js-private-icon status is-hidden"><img src="/images/v4/public/userpage/icon-private.svg" alt="非公開" width="10px" height="10px"></span> <div class="centerarticle-reaction-main-comment-tags"> <span class="js-comment"></span> <ul class="centerarticle-reaction-tags js-tag-text"> <li><a href="/shunt_i/shell/" data-gtm-click-label="user-reaction-tag">shell</a></li> </ul> </div> <div class="centerarticle-reaction-foot"> <div class="centerarticle-reaction-meta"> <span class="comment-permalink js-comment-permalink"> <a href="/entry/4702189066267008162/comment/shunt_i" data-gtm-click-label="user-reaction-permalink" rel="nofollow">リンク</a> </span> <span class="list-star-container js-list-star-container"></span> <span class="twitter-click js-short-url-clicks"></span> </div> <ul class="centerarticle-reaction-menu"> <li class="js-add-star-container add-star-container"></li> </ul> </div> </div> </div> </div> <ul class="centerarticle-reaction-following js-user-following-bookmarks-icon"> </ul> <div class="js-user-following-bookmarks-detail is-hidden"> </div> </li> <li class="bookmark-item js-user-bookmark-item js-intent-share-bookmark" data-target-url="https://zariganitosh.hatenablog.jp/entry/20131209/minimum_awk"> <div class="centerarticle-entry is-image-entry-unit"> <h3 class="centerarticle-entry-title"> <a href="https://zariganitosh.hatenablog.jp/entry/20131209/minimum_awk" class="js-clickable-link js-keyboard-openable" target="_blank" rel="noopener" data-gtm-click-label="user-bookmark-title"><img class="centerarticle-entry-favicon" src="https://cdn-ak2.favicon.st-hatena.com/64?url=https%3A%2F%2Fzariganitosh.hatenablog.jp%2Fentry%2F20131209%2Fminimum_awk" alt="">なるべく書かないawkの使い方 - ザリガニが見ていた...。</a> </h3> <ul class="centerarticle-entry-data"> <li> <span class="centerarticle-users"> <a href="/entry/s/zariganitosh.hatenablog.jp/entry/20131209/minimum_awk" class="js-keyboard-entry-page-openable" title="なるべく書かないawkの使い方 - ザリガニが見ていた...。 (989ブックマーク)" data-gtm-click-label="user-bookmark-users">989 users</a> </span> </li> <li> <a href="/shunt_i/?url=https%3A%2F%2Fzariganitosh.hatenablog.jp%2F" title="『zariganitosh.hatenablog.jp』の新着エントリー" data-gtm-click-label="user-bookmark-domain"> zariganitosh.hatenablog.jp </a> </li> <li><a href="/hotentry/it" data-gtm-click-label="user-bookmark-category">テクノロジー</a></li> </ul> <div class="centerarticle-entry-contents"> <p class="centerarticle-entry-summary">awkという、古くからのスクリプト言語がある。(1977年生まれ。読み方は「オーク」である。エイ・ダブリュ・ケイではない)man awkを<a data-gtm-click-label="entry-summary-keyword" href="/q/PDF">PDF</a>に変換してみると、たったの3ページ強しかない。 $ man -t awk|ps<a data-gtm-click-label="entry-summary-keyword" href="/q/top">top</a>df -i -o ~/Downloads/awk.<a data-gtm-click-label="entry-summary-keyword" href="/q/PDF">pdf</a> とてもシンプルな言語仕様ではあるが、awkには必要十分な表現力がある。特にテキストを処理する場面においては、最小限のシンプルな記述で、気の利いた処理を素早くこなす。無駄のないawkワンライナーを見ると、ある種の感動を覚える。awk以降に生まれたスクリプト言語は、少なからずawkの影響を受けていると思われる。 awkを知ることで、間違いなく幸福度は上がると思う。いつかきっと「知ってて良かった」と思える時が来るはず。もっともっと、awkを知りたくなってきた。 基<a data-gtm-click-label="entry-summary-keyword" href="/q/%E6%9C%AC">本</a>動作 awkの基<a data-gtm-click-label="entry-summary-keyword" href="/q/%E6%9C%AC">本</a>動作は、とってもシンプルである。</p> <a href="https://zariganitosh.hatenablog.jp/entry/20131209/minimum_awk" class="centerarticle-entry-image" target="_blank" rel="noopener" data-gtm-click-label="user-bookmark-thumb"> <img src="https://cdn-ak-scissors.b.st-hatena.com/image/square/25d57b114e15bcdaf6872e705f25c356a4302f40/height=288;version=1;width=512/https%3A%2F%2Fogimage.blog.st-hatena.com%2F17680117126970319158%2F17680117126970360956%2F1550537742" alt="なるべく書かないawkの使い方 - ザリガニが見ていた...。"> </a> </div> </div> <div class="centerarticle-reaction js-user-bookmark-id-container" id="bookmark-4664809727209403137"> <div class="centerarticle-reaction-comment js-user-bookmark-comment " data-url="https://zariganitosh.hatenablog.jp/entry/20131209/minimum_awk" data-user-name="shunt_i"> <a href="/shunt_i/" data-gtm-click-label="user-reaction-usericon" class="centerarticle-reaction-thumb"> <img src="https://cdn.profile-image.st-hatena.com/users/shunt_i/profile.png" alt="shunt_i" title="shunt_i" class="centerarticle-reaction-image"> </a> <div class="centerarticle-reaction-main"> <span class="centerarticle-reaction-username"><a href="https://b.hatena.ne.jp/shunt_i/20210122#bookmark-4664809727209403137" class="js-anchor-path" data-gtm-click-label="user-reaction-username">shunt_i</a></span> <span class="centerarticle-reaction-timestamp">2021/01/22</span> <span class="js-private-icon status is-hidden"><img src="/images/v4/public/userpage/icon-private.svg" alt="非公開" width="10px" height="10px"></span> <div class="centerarticle-reaction-main-comment-tags"> <span class="js-comment">awkでgoogle検索してもこのサイトが上位に出ないのおかしい</span> <ul class="centerarticle-reaction-tags js-tag-text"> <li><a href="/shunt_i/linux/" data-gtm-click-label="user-reaction-tag">linux</a></li> <li><a href="/shunt_i/shell/" data-gtm-click-label="user-reaction-tag">shell</a></li> </ul> </div> <div class="centerarticle-reaction-foot"> <div class="centerarticle-reaction-meta"> <span class="comment-permalink js-comment-permalink"> <a href="/entry/4664809727209403137/comment/shunt_i" data-gtm-click-label="user-reaction-permalink" rel="">リンク</a> </span> <span class="list-star-container js-list-star-container"></span> <span class="twitter-click js-short-url-clicks"></span> </div> <ul class="centerarticle-reaction-menu"> <li class="js-add-star-container add-star-container"></li> </ul> </div> </div> </div> </div> <ul class="centerarticle-reaction-following js-user-following-bookmarks-icon"> </ul> <div class="js-user-following-bookmarks-detail is-hidden"> </div> </li> <li> <div class="centerarticle-pager"> <span class="centerarticle-waiting js-read-more-waiting is-hidden"><img src="https://b.st-hatena.com/21bb37de101e3d895eac61554a1ca07012b63961/images/v4/public/common/loading@2x.gif" alt="残りのブックマークを読み込んでいます" width="16" height="16" /></span> <span>1</span> </div> </li> </ul> </div> </div> <script type="text/javascript"> // ---------------- dfp section ---------------- var valve = valve || []; valve.push(function(v) { v.defineDFPSlot({ unit: '/4374287/b_pc_o_18_3025_0_no', sizes: [[300,250]], slotId: 'user-sidebar-ad-top' }); v.defineDFPSlot({ unit: '/4374287/b_pc_o_19_3060_0_no', sizes: [[300,600],[300,250]], slotId: 'user-sidebar-ad-bottom' }); v.sealDFPSlots(); }); </script> <script> var valve = window.valve || []; valve.push(function(v) { var pageKeyValues = {}; if (document.cookie.split(';').some(function(item) { return item.indexOf('202011_guest_status=register_incomplete') >= 0})) { pageKeyValues.bookmark_status = 'register_incomplete'; } v.config({ pageKeyValues: pageKeyValues, content: { result: "ng" }, service: 'bookmark' }); }); </script> <script src="https://cdn.pool.st-hatena.com/valve/valve.js" async></script> <div class="right-container"> <div id="user-sidebar-ad-top" class="centerarticle-aside-ad"></div> <section class="centerarticle-aside-section"> <div class="centerarticle-aside-info"> <h3 class="centerarticle-aside-info-title">お知らせ</h3> <ul class="centerarticle-aside-info-list"> <li class="centerarticle-aside-info-item"> <a href="https://bookmark.hatenastaff.com/entry/2025/03/18/115302?utm_source=user_page_side_column&utm_medium=official_announcement&utm_campaign=2025%2F03%2F18%2F115302" target="_blank"> <p class="centerarticle-aside-info-category">ランキング</p> <h4 class="centerarticle-aside-info-item-title">今週のはてなブックマーク数ランキング(2025年3月第3週)</h4> <time class="centerarticle-aside-info-item-time">2025/03/18</time> </a> </li> <li class="centerarticle-aside-info-item"> <a href="https://bookmark.hatenastaff.com/entry/2025/03/11/113220?utm_source=user_page_side_column&utm_medium=official_announcement&utm_campaign=2025%2F03%2F11%2F113220" target="_blank"> <p class="centerarticle-aside-info-category">ランキング</p> <h4 class="centerarticle-aside-info-item-title">今週のはてなブックマーク数ランキング(2025年3月第2週)</h4> <time class="centerarticle-aside-info-item-time">2025/03/11</time> </a> </li> <li class="centerarticle-aside-info-item"> <a href="https://bookmark.hatenastaff.com/entry/2025/03/07/120023?utm_source=user_page_side_column&utm_medium=official_announcement&utm_campaign=2025%2F03%2F07%2F120023" target="_blank"> <p class="centerarticle-aside-info-category">ランキング</p> <h4 class="centerarticle-aside-info-item-title">月間はてなブックマーク数ランキング(2025年2月)</h4> <time class="centerarticle-aside-info-item-time">2025/03/07</time> </a> </li> </ul> <div class="enterarticle-aside-info-readmore"> <a href="https://bookmark.hatenastaff.com/?utm_source=user_page_side_column&utm_medium=official_announcement&utm_campaign=readmore" class="enterarticle-aside-info-readmore-button" target="_blank">もっと読む</a> </div> </div> </section> <section class="centerarticle-aside-section"> <h3 class="centerarticle-aside-title">公式Twitter</h3> <ul class="centerarticle-aside-twitter"> <li><a href="https://twitter.com/HatenaBookmark" target="_blank" rel="noopener" data-gtm-click-label="user-officialTwitter-name">@HatenaBookmark</a><p>リリース、障害情報などのサービスのお知らせ</p></li> <li><a href="https://twitter.com/hatebu" target="_blank" rel="noopener" data-gtm-click-label="user-hotentryTwitter-name">@hatebu</a><p>最新の人気エントリーの配信</p></li> </ul> </section> <div id="user-sidebar-ad-bottom" class="centerarticle-aside-ad"></div> </div> </div> </div> <div class="progress-modal is-hidden js-progress-modal"> <div class="progress-modal-spiner"></div> <div class="progress-modal-message"> <p class="progress-modal-message-text js-progress-message">処理を実行中です</p> <button class="progress-modal-cancel js-cancel-button">中止</button> </div> </div> <div class="message-modal js-message-modal is-hidden auto-hide"> <div class="message-modal-message"> <p class="message-modal-message-text js-message-modal-message-text"></p> <button class="message-modal-btn js-message-modal-close-button">閉じる</button> </div> </div> <div id="keyboard-shortcut-help" class="shortcut-help is-hidden"> <h3 class="shortcut-help-title">キーボードショートカット一覧</h3> <p><span class="shortcut-help-key">j</span>次のブックマーク</p> <p><span class="shortcut-help-key">k</span>前のブックマーク</p> <p><span class="shortcut-help-key">l</span>あとで読む</p> <p><span class="shortcut-help-key">e</span>コメント一覧を開く</p> <p><span class="shortcut-help-key">o</span>ページを開く</p> <button tyle="button" class="shortcut-help-close js-close-button">✕</button> </div> <div class="footer"> <div class="footer-inner"> <div class="footer-inner-group footer-bookmark"> <h2 class="footer-title"><a href="/" data-gtm-label="footer-btop">はてなブックマーク</a></h2> <div class="footer-list-wrapper"> <ul class="footer-list footer-list--pc"> <li class="footer-list-item js-keyboard-selectable-item"><a href="/hotentry/all" class="hotentry js-keyboard-openable" data-gtm-label="footerCategories-hotentry">総合</a></li> <li class="footer-list-item js-keyboard-selectable-item"><a href="/hotentry/general" class="general js-keyboard-openable" data-gtm-label="footerCategories-general">一般</a></li> <li class="footer-list-item js-keyboard-selectable-item"><a href="/hotentry/social" class="cat-social js-keyboard-openable" data-gtm-label="footerCategories-social">世の中</a></li> <li class="footer-list-item js-keyboard-selectable-item"><a href="/hotentry/economics" class="cat-economics js-keyboard-openable" data-gtm-label="footerCategories-economics">政治と経済</a></li> <li class="footer-list-item js-keyboard-selectable-item"><a href="/hotentry/life" class="cat-life js-keyboard-openable" data-gtm-label="footerCategories-life">暮らし</a></li> <li class="footer-list-item js-keyboard-selectable-item"><a href="/hotentry/knowledge" class="cat-knowledge js-keyboard-openable" data-gtm-label="footerCategories-knowledge">学び</a></li> </ul> <ul class="footer-list footer-list--pc"> <li class="footer-list-item js-keyboard-selectable-item"><a href="/hotentry/it" class="cat-it js-keyboard-openable" data-gtm-label="footerCategories-it">テクノロジー</a></li> <li class="footer-list-item js-keyboard-selectable-item"><a href="/hotentry/entertainment" class="cat-entertainment js-keyboard-openable" data-gtm-label="footerCategories-entertainment">エンタメ</a></li> <li class="footer-list-item js-keyboard-selectable-item"><a href="/hotentry/game" class="cat-game js-keyboard-openable" data-gtm-label="footerCategories-game">アニメとゲーム</a></li> <li class="footer-list-item js-keyboard-selectable-item"><a href="/hotentry/fun" class="cat-fun js-keyboard-openable" data-gtm-label="footerCategories-fun">おもしろ</a></li> </ul> <ul class="footer-list"> <li class="footer-list-item"><a href="/guide/tools">アプリ・拡張機能</a></li> <li class="footer-list-item"><a href="https://bookmark.hatenastaff.com/">開発ブログ</a></li> <li class="footer-list-item"><a href="/help/">ヘルプ</a></li> <li class="footer-list-item"><a href="https://hatena.zendesk.com/hc/ja/categories/900000153166">お問い合わせ</a></li> <li class="footer-list-item footer-list-item--sp"><a href="/guide/guideline">ガイドライン</a></li> <li class="footer-list-item footer-list-item--sp"><a href="https://policies.hatena.ne.jp/rule">利用規約</a></li> <li class="footer-list-item footer-list-item--sp"><a href="https://policies.hatena.ne.jp/privacypolicy-ja">プライバシーポリシー</a></li> <li class="footer-list-item footer-list-item--sp"><a href="https://policies.hatena.ne.jp/cookie-policy">利用者情報の外部送信について</a></li> </ul> <ul class="footer-list footer-list--pc"> <li class="footer-list-item footer-list-item--pc"><a href="/guide/guideline">ガイドライン</a></li> <li class="footer-list-item footer-list-item--pc"><a href="https://policies.hatena.ne.jp/rule">利用規約</a></li> <li class="footer-list-item footer-list-item--pc"><a href="https://policies.hatena.ne.jp/privacypolicy-ja">プライバシーポリシー</a></li> <li class="footer-list-item footer-list-item--pc"><a href="https://policies.hatena.ne.jp/cookie-policy">利用者情報の外部送信について</a></li> </ul> </div> </div> <div class="footer-inner-group footer-bookmark-sns"> <h2 class="footer-title">公式Twitter</h2> <div class="footer-bookmark-list"> <ul class="footer-list"> <li class="footer-list-item"><a href="https://twitter.com/HatenaBookmark" target="_blank" rel="noopener" data-gtm-click-label="footer-officialTwitter-name">公式アカウント</a></li> <li class="footer-list-item"><a href="https://twitter.com/hatebu" target="_blank" rel="noopener" data-gtm-click-label="footer-hotentryTwitter-name">ホットエントリー</a></li> </ul> </div> </div> <div class="footer-inner-group footer-hatena"> <h2 class="footer-title">はてなのサービス</h2> <ul class="footer-list"> <li class="footer-list-item"><a href="https://hatenablog.com/" data-gtm-label="footerServices-blog">はてなブログ</a></li> <li class="footer-list-item"><a href="https://hatenablog.com/guide/pro?plus_via=hatenabookmark_footer&utm_source=hatenabookmark&utm_medium=referral&utm_campaign=hatenabookmark_to_hatenablog_pro&utm_content=hatenabookmark_footer" data-gtm-label="footerServices-blog-pro">はてなブログPro</a></li> <li class="footer-list-item"><a href="https://q.hatena.ne.jp/" data-gtm-label="footerServices-question">人力検索はてな</a></li> <li class="footer-list-item"><a href="http://d.hatena.ne.jp/" data-gtm-label="footerServices-keyword">はてなブログ タグ</a></li> <li class="footer-list-item"><a href="http://hatenanews.com/" data-gtm-label="footerServices-hatenanews">はてなニュース</a></li> <li class="footer-list-item"><a href="https://soredoko.jp/" data-gtm-label="footerServices-soredoko">ソレドコ</a></li> </ul> </div> </div> <div class="footer-bottom"> <div class="footer-app"> <ul> <li class="footer-list-item"><a href="https://apps.apple.com/jp/app/hatenabukkumaku/id354976659?mt=8" target="_blank" rel="noopener" data-gtm-click-label="footer-app-ios"><img src="https://b.st-hatena.com/21bb37de101e3d895eac61554a1ca07012b63961/images/v4/public/common/dl-button/appstore@2x.png" alt="App Storeからダウンロード"></a></li> <li class="footer-list-item"><a href="https://play.google.com/store/apps/details?id=com.hatena.android.bookmark&referrer=utm_source%3Dbookmark_sp%26utm_campaign%3Dbookmark_sp_user&hl=ja" target="_blank" rel="noopener" data-gtm-click-label="footer-app-android"><img src="https://b.st-hatena.com/21bb37de101e3d895eac61554a1ca07012b63961/images/v4/public/common/dl-button/googleplay@2x.png" alt="Google Playで手に入れよう"></a></li> </ul> </div> <div class="copyright">Copyright © 2005-2025 <a href="http://www.hatena.ne.jp/">Hatena</a>. All Rights Reserved.</div> </div> </div> <div class="modal-overlay"></div> <script type="text/javascript" src="https://b.st-hatena.com/21bb37de101e3d895eac61554a1ca07012b63961/js/v4/bookmark.star.js" async></script> <div class="js-head-notify is-hidden">設定を変更しました<span class="js-head-notify-close-button">x</span></div> </body> </html>