- 投稿日:2020-07-06T23:12:13+09:00
Macのコマンドラインで明日を表現する方法
macのdate表現で困った
macユーザーになってまだ3ヶ月の私にとっては、bashのdateコマンドすら手強い相手でした。
今回、目的にあった形で日付の表現をするのに、小一時間以上かかってしまい軽く自分にショックを受けてしまいました。他のmacビギナーにとっても日付の表現で時間を多く無駄にしてしまうことはショッキングなことだと思ったので、ここにナリッジをまとめておきたいと考えました。
そもそも:macのコマンドラインで日付表現をしたかったわけ
macにはautomatorという非常に便利なツールがあることを最近になって知りました。
これを使えば、macに最初から入っているツールを組み合わせて、自分好みの自動化アプリケーションを簡単に作ることができます。今回は、毎日の日記を自動で作成するアプリケーションを作るために、bashで日付表現を使う必要がありました。
date -d '1 days'では明日を表せない?
検索ボックスで、「bash 日付」と打ってでてきたのが、見出しのワンライナーでした。
bashdate -d '1 days'これで、明日の日付を取得して自動でファイルの作成ができる!
と思ったら...これがうまく行かないのです。というのも、この表記はGNUとよばれるパターンの表記方法だったのです。
GNUって?
GNUはwindowsのコマンドラインでの書き方になります。
ところが、私はmacユーザー。
どうりでこの表現ができないわけですね。windowsがGNUならMacは
もちろんmacにも明日の表現方法はあります。
macの表現方法はBSDと呼ばれる表記方法になるそうです。BSD表記になると、明日を表すコマンドは以下の通り。
bashdate -v+1dよかった!macでも簡単に表現できました!
こうして、``(バッククォーテ)を組み合わせたところ、
念願の「本日付けのファイルをコピーして明日の日付のファイルを作成する」ことができました!bashcp `date +%Y%m%d`.txt `date -v+1d +%Y%m%d`.txt
- 投稿日:2020-07-06T22:34:05+09:00
gulp エラー対応:SyntaxError: Cannot use import statement outside a module
環境
・MacOS
・gulp v4.0.2
・node.js v14.4.0エラー発生タイミング
package.json作成、npm iコマンドでモジュールインストール後にgulp実行でエラー(SyntaxError: Cannot use import statement outside a module)発生
コンソール エラー[21:29:01] Requiring external module babel-register /Applications/MAMP/htdocs/fuelphp/gulpfile.babel.js:1 import gulp from 'gulp'; ^^^^^^ SyntaxError: Cannot use import statement outside a module at wrapSafe (internal/modules/cjs/loader.js:1116:16) at Module._compile (internal/modules/cjs/loader.js:1164:27) at loader (/Applications/MAMP/htdocs/fuelphp/node_modules/babel-register/lib/node.js:144:5) at Object.require.extensions.<computed> [as .js] (/Applications/MAMP/htdocs/fuelphp/node_modules/babel-register/lib/node.js:154:7) at Module.load (internal/modules/cjs/loader.js:1049:32) at Function.Module._load (internal/modules/cjs/loader.js:937:14) at Module.require (internal/modules/cjs/loader.js:1089:19) at require (internal/modules/cjs/helpers.js:73:18) at requireOrImport (/usr/local/lib/node_modules/gulp/node_modules/gulp-cli/lib/shared/require-or-import.js:19:11) at execute (/usr/local/lib/node_modules/gulp/node_modules/gulp-cli/lib/versioned/^4.0.0/index.js:37:3)原因
ディレクトリ配下に.babelrcを作成していなかった
.babelrc{ "presets": ["env"] }対策
.babelrc作成後、再度gulpコマンド実行で問題なく動作した
- 投稿日:2020-07-06T15:43:49+09:00
ラズビアンを確実にインストールする方法
はじめに
この記事は、ラズビアンのインストールを何回やっても成功できなかった僕が確実にラズビアンをインストールする方法を調べてまとめた物です。
ラズベリーパイが起動しない
電源を入れたし、SDカードも刺したし、HDもしっかり刺さっているのにラズパイの赤いライトが光るだけで起動しないと悩んでいる人やどうやってラズビアンをインストールすれはいいか分からないという人はぜひ最後まで見ていってください。
SD Card ForatterとRaspberry Pi Imagerをインストールする
工程1
このSD Card Foratterは完全にSDカードの情報をフォーマットするためのソフトなので、新品のSDカードやラズビアンをインストールしたことがないSDカードを使う場合はインストールする必要はありませんが、念の為SDカードの中身はカラにしてから次の工程に移って下さい。インストールするにはこのサイトに飛んで
上のような所までスクロールして、自分の使っているOSをクリックする。今回僕はmacを使っているので右をクリック。そうしたら利用規約のページに飛ばされるので一番下までいって同意しますをクリック。少し待つとzipファイルがダウンロードされるので展開するとインストーラーが出てくるのでそれに従って進めるとインストールが完了する。アプリを開くと
上のようなウィンドウが出て来るので、今回ラズビアンをインストールするSDカードを選択してフォーマットオプション設定がクイックフォーマットになっているかを確認してフォーマットを押すだけプロセスが終了したらこのアプリを閉じて次の工程に進んで下さい。工程2
このRaspberry Pi ImagerとはSDカードに任意のOSを書き込み専用ソフトです。今回はこれでOSをインストールして行きます。まずラズベリーパイの公式にアクセスします
そうしたら今回はmacを使うので黄色で囲んだリンクをクリックして下さい(ウィンドウズの人は一つ上のリンクをクリック)。そうしたら自動でimager.dmgがダウンロードされるのでそれを開いてインストールを進めて下さい。インストールが完了すると、
このようなウインドウが立ち上がります。そうしたら今度はOperating Systemをクリックして、次にRasperry Pi OS(other)をクリック更にRasperry Pi OS Fullを選択します。最後にSD Cardで任意のSDカードを選択してWlRITEをクリックしてあとは待つだけ。すべてのプロセスが終了したら、SDカードを安全に取り出したら準備は終了です。後はラズパイにSDカードを差し込み電源を入れたらラズベリーパイが無事に起動するはずです。それでも起動しなかった時にやる事
①エアダスターなどでホコリを飛ばす
②SDカードを変える(ラズパイを使うならSDカードは32G以上がおすすめ)
③SDカードを刺したり、抜いたり、電源を入れたり消したりを何回か繰り返す(これが一番おすすめ)最後に
最後まで見てくれてありがとう。これからはラズパイ関連の記事も書いていく予定なのでよかったらフォローして下さい。もし間違いを見つけたら気軽にコメントで教えて下さい。
次の記事ですよけれは一緒に見て下さい!!
ラズベリーパイを起動したらやるべき3つの事
- 投稿日:2020-07-06T15:11:18+09:00
MacOS Catalina でpyenv install できない時の対処
備忘録として
MacOS Mojaveの時にも似たようなエラー pyenv install で Module Not Found Error :Zlib とかあったのですが、Catalina でも似たようなエラーがあったのでメモ。
エラー内容と対処法
BUILD FAILED (OS X 10.14 using python-build 20180424) Inspect or clean up the working tree at /var/folders/3h/68w9_bcx139176n71cbbbdg00000gn/T/python-build.20181003001910.1083 Results logged to /var/folders/3h/68w9_bcx139176n71cbbbdg00000gn/T/python-build.20181003001910.1083.log Last 10 log lines: File "/private/var/folders/3h/68w9_bcx139176n71cbbbdg00000gn/T/python-build.20181003001910.1083/Python-3.5.4/Lib/ensurepip/__main__.py", line 4, in <module> ensurepip._main() File "/private/var/folders/3h/68w9_bcx139176n71cbbbdg00000gn/T/python-build.20181003001910.1083/Python-3.5.4/Lib/ensurepip/__init__.py", line 209, in _main default_pip=args.default_pip, File "/private/var/folders/3h/68w9_bcx139176n71cbbbdg00000gn/T/python-build.20181003001910.1083/Python-3.5.4/Lib/ensurepip/__init__.py", line 116, in bootstrap _run_pip(args + [p[0] for p in _PROJECTS], additional_paths) File "/private/var/folders/3h/68w9_bcx139176n71cbbbdg00000gn/T/python-build.20181003001910.1083/Python-3.5.4/Lib/ensurepip/__init__.py", line 40, in _run_pip import pip zipimport.ZipImportError: can't decompress data; zlib not available make: *** [install] Error 1がこんな感じであれば、
$ CFLAGS="-I$(xcrun --show-sdk-path)/usr/include" pyenv install {version}で解決する。
関連リンク
- 投稿日:2020-07-06T13:43:19+09:00
Macでデュアルディスプレイのスクリーンショットを自動化する。
while true ; do screencapture -x `date +%s`.png ; sleep 60; doneターミナルに以上のコマンドを打てば、60秒ごとにスクリーンショットを撮ることができます。
-xでシャッター音を消しています。参考サイト(そのままです。ありがとうございます!)
Macで定期的にスクリーンショットを撮るその他オプションについては以下のサイトがわかりやすかったです。
Mac スクリーンショットコマンド「screencapture」の使用方法まとめ
上の手法だと、メインモニターしかスクリーンショットされません。よってデュアルディスプレイの方のスクリーンショットを撮りたい場合は、下の記事にしたがって、メインモニターをもう一つのディスプレイに移すことで、撮ることができます。
- 投稿日:2020-07-06T10:33:30+09:00
PostgreSQLに接続できなくなった時の対処法
エラーの詳細
Railsで昨日まで問題なくサーバーにアクセスできたのに、電源を切ってから次の日にアクセスするとエラーが出てアクセスできなかった。
PG::ConnectionBad could not connect to server: No such file or directory Is the server running locally and accepting connections on Unix domain socket "/tmp/.s.PGSQL.5432"?実行環境
- macOS Catalina 10.15.5
- PostgreSQL 12.3
- Homebrewを使っている
解決策
Homebrewとポスグレをアップデートする。
$ brew update $ brew upgradeポスグレを再起動する。
$ brew services restart postgresql自分はこの手順で解決できた。
- 投稿日:2020-07-06T08:49:57+09:00
【アロー関数】 javascript () => {} 意味 一言で、 入門
【ゴール】
アロー関数理解
【コード】
■JSを学んでいくと出てきた「 () => {} 」
hoge.jsconst name = () => { console.log('名前は太郎です'); }■関数の省略
■下記と同じ意味(fucntionが有る、無い)
■function無しが推奨みたいです。hoge.jsconst name = () => { console.log('名前は太郎です'); } const hoge = function(){ console.log('名前は太郎です'); }【まとめ】
■「() => {}」はアロー関数という
■推奨されている記述
【合わせて読みたい】
■ 【javascript】 テンプレートリテラル とは 一言で。
https://qiita.com/tanaka-yu3/items/9b07bd9fc4126291be28■ 【Javascript】JS 変数 定数 違い 一言でまとめました
https://qiita.com/tanaka-yu3/items/51b8b0630a1e4e2d52c8■ 【Javascript】 メソッド まとめ 基礎基本コード メモ
https://qiita.com/tanaka-yu3/items/2438798d159fa402b1d5