「SE業務」カテゴリーアーカイブ

【Linux】findコマンドで空のディレクトリを削除する際に、起点のディレクトリを残す。

システム運用の一環で、一時フォルダにあるごみを削除することになりました。

findコマンドで空ディレクトリを削除できるとわかったのでやってみたが、配下のディレクトリがすべて削除されると、ターゲットディレクトリまで削除の対象になってしまった。↓

find <ターゲットディレクトリ> -type d -depth -empty -delete -print

【対処方法】

調べた結果findコマンドのmindepthというオプションが使えることが分かった。

-mindepth levels
検索開始ポイントから levels で示される階層数のディレクトリに至るまでは、 テストやアクションを適用しません (levels は負ではない整数です。)。 -mindepth 1 を指定すると、 検索開始ポイントを除いたファイルを、 すべて処理することになります。

https://linuxjm.osdn.jp/html/GNU_findutils/man1/find.1.html

つまり、-mindepthに1をセットすることで、検索開始ポイントは処理の対象外にできるということで、以下のようにコマンドを変更しました。

【改良後のコマンド】
find <ターゲットディレクトリ> -mindepth 1 -type d -depth -empty -delete -print

実行してみると以下のようにターゲットディレクトリは維持されたまま、空ディレクトリを掃除することができた。

【実行前】
./
└─target
   ├─folder_1
    │
    └─folder_2

【実行後】
./
└─target

うまくいったぞ!(v´∀`v)


【Spring Boot】「Cannot find template location: classpath:/templates/」のエラーが出力される場合の対処法

Spring Bootを採用している開発案件に参画することになったため、今更ではあるが勉強を開始した。

利用した書籍はこちら↓
Prime Readingで読めるし、評価も高いので。

Spring Boot 2 入門: 基礎から実演まで

本の解説自体はわかりやすいのだが、サンプルアプリケーションを起動してアクセスしたところ、こんなエラーがでて躓いた。

【エラー】

サーバの起動時もWarningのログが出力されたいた↓

Cannot find template location: classpath:/templates/ (please add some templates, check your Thymeleaf configuration, or set spring.thymeleaf.check-template-location=false)

“templatesフォルダが見つからない”というメッセージだが、確かに存在している。書籍の特典として配布されているソースコードを取り込んでも同じエラーがでてしまった。

【対処方法】

散々調査した結果、templatesフォルダのあるsrc/main/resourcesのソースフォルダ設定に問題があった。

以下のようにプロジェクト作成直後の設定だと、出力対象としてすべて除外されるように設定されていた。

これを以下のように除去することでエラーが発生しなくなった!

書籍が発売されてかた少し時間が経っているので、こういったことは致し方ないと思うが、書籍の通り実行して動かないというのは、多くの人が挫折する原因だなとつくづく思った。
(*´・ω`)y━・~~ フゥ~


サイトからファビコン画像を簡単に取得する方法

ブラウザを開いて、以下のURLの末尾に取得したいサイトのURLを入力してEnterを押すだけ!!

http://www.google.com/s2/favicons?domain=ファビコンを取得したいサイトのURL

例えば、Yahooのファビコンであれば↓

http://www.google.com/s2/favicons?domain=https://www.yahoo.co.jp/

するとファビコンが表示されるので、右クリックメニューから保存します。

png形式で保存されます。
とっても簡単なのでぜひお試しあれ!