20200925のMacに関する記事は6件です。

ファイルサイズを指定してファイルを作る方法

ファイルサイズを指定してファイルを作る場合はWebツールでbyte計算をしながら作ると楽(掛け算が辛いので)。
参考 : バイト換算 - 高精度計算サイト

ファイルの中身がなんでもいい場合

Windowsの場合

ファイルサイズのチェック処理をテストする時にきっちりサイズのファイルが欲しい。
中身がなんでもいい場合に使えます。

fsutilはWindowsコマンドなのでGitBashなどコマンドプロンプト以外を使うと文字化けする。
それが嫌な場合は.bash_profileなどで対策できる。が、文字化けしても使える。

作り方
# ファイルサイズはbyte数で指定
$ fsutil file createnew {ファイル名} {ファイルサイズ}
10Mのファイルサイズチェックを境界値テストするためのファイルを作る
# 10M-1byteのGIFファイルを作る
$ fsutil file createnew sample10m_under.gif 10485759
ファイル C:\path\to\sample10m_under.gif が作成されました
# 10MのPDFファイルを作る
$ fsutil file createnew sample10m.pdf 10485760
ファイル C:\path\to\sample10m.pdf が作成されました
# 10M+1byteのPNGファイルを作る
$ fsutil file createnew sample10m_over.png 10485761
ファイル C:\path\to\sample10m_over.png が作成されました
# できた
$ ls -la | grep sample10m
-rw-r--r-- 1 ponsuke 197609 10485760 9月  25 20:02 sample10m.pdf
-rw-r--r-- 1 ponsuke 197609 10485761 9月  25 20:02 sample10m_over.png
-rw-r--r-- 1 ponsuke 197609 10485759 9月  25 20:01 sample10m_under.gif

Macの場合

作り方
# ファイルサイズは、b(ブロック数) / k(KB) / m(MB) / g(GB)の単位をつけて指定
$ mkfile {サイズ} {ファイル名}
いろんなサイズで作ってみる
# bはbyteではないので注意が必要
% mkfile 10b sample10b.pdf
# 他の単位はわかりやすい
% mkfile 10k sample10k.gif
% mkfile 10m sample10m.jpg
# できた
% ls -la | grep sample10
-rw-------@  1 ponsuke  staff      5120  9 25 20:37 sample10b.pdf
-rw-------@  1 ponsuke  staff     10240  9 25 20:37 sample10k.gif
-rw-------@  1 ponsuke  staff  10485760  9 25 20:38 sample10m.jpg

Ubuntuの場合

作り方
# サイズには単位を指定できる
$ dd if={コピー元のファイルとか標準入力} of={ファイル名} bs={コピー1回のサイズ} count={コピー回数}
$ fallocate -l {ファイルサイズ} {ファイル名}
# {出力元となるファイルや標準入力}から{出力サイズ}分{ファイル名}に出力する
$ head -c {出力サイズ} {出力元となるファイルや標準入力} > {ファイル名}
# ddの場合------------------------------------------------------------------
# サイズの単位は「M」を指定した場合と
$ dd if=/dev/zero of=sample10m.png bs=10M count=1
1+0 records in
1+0 records out
10485760 bytes (10 MB, 10 MiB) copied, 0.013019 s, 805 MB/s
# 「MB」を指定した場合では
$ dd if=/dev/zero of=sample10m.pdf bs=10MB count=1
1+0 records in
1+0 records out
10000000 bytes (10 MB, 9.5 MiB) copied, 0.0118475 s, 844 MB/s
# サイズが違うので注意が必要
$ ls -la sample10m.p*
-rw-rw-r-- 1 ubuntu ubuntu 10000000 Sep 25 13:42 sample10m.pdf
-rw-rw-r-- 1 ubuntu ubuntu 10485760 Sep 25 13:42 sample10m.png
# よく分からなくなったらmanで確認する
$ man dd | grep M | grep B
       N and BYTES may be followed by the following multiplicative suffixes: c =1, w =2, b =512, kB =1000, K  =1024,  MB  =1000*1000,  M
       =1024*1024, xM =M, GB =1000*1000*1000, G =1024*1024*1024, and so on for T, P, E, Z, Y.

# fallocateの場合------------------------------------------------------------------
# ファイルサイズの単位に「K」を指定した場合と
$ fallocate -l 1K sample1k.tiff
# 「KB」を指定した場合では
$ fallocate -l 1KB sample1k.gif
# サイズが違うので注意が必要
$ ls -la sample1k.*
-rw-rw-r-- 1 ubuntu ubuntu 1000 Sep 25 14:08 sample1k.gif
-rw-rw-r-- 1 ubuntu ubuntu 1024 Sep 25 14:08 sample1k.tiff

# headの場合------------------------------------------------------------------
$ head -c 10G /dev/zero > sample10g.bmp
$ head -c 10GB /dev/zero > sample10g.pdf
$ ls -la sample10g.*
-rw-rw-r-- 1 ubuntu ubuntu 10737418240 Sep 25 14:28 sample10g.bmp
-rw-rw-r-- 1 ubuntu ubuntu 10000000000 Sep 25 14:33 sample10g.pdf
  • このエントリーをはてなブックマークに追加
  • Qiitaで続きを読む

Xcodeで「DEVELOPER_DIR」に指定するパス

はじめに

ターミナルでどのXcodeを使うか指定するとき、以下の2パターンを見かけますが、みなさんはどちらで指定しているでしょうか。
また、同じ挙動になるかご存知でしょうか。

DEVELOPER_DIRの指定パス
# 1
$ export DEVELOPER_DIR=/Applications/Xcode_12.app/Contents/Developer

# 2
$ export DEVELOPER_DIR=/Applications/Xcode_12.app

私は先日まで知りませんでした。

結論

結論から言うと、1も2も同様の挙動になるので、どちらで指定しても問題ありません。

man xcode-select で解説されています。

xcode-selectのmanualの抜粋
EXAMPLES
       xcode-select --switch /Applications/Xcode.app/Contents/Developer
          Select /Applications/Xcode.app/Contents/Developer as the active developer directory.

       xcode-select --switch /Applications/Xcode.app
          As above, selects /Applications/Xcode.app/Contents/Developer as the active developer directory. The Developer content directory is automatically inferred by xcode-select.

DEVELOPER_DIR の名前通り「Developer」フォルダを指定すべきですが、「Xcode.app」のパスを指定した場合は自動で「Developer」フォルダが推測されます。

おまけ:「DEVELOPER_DIR」と「xcode-select」について

コマンドラインで使うXcodeを指定するには、 DEVELOPER_DIR 環境変数をエクスポートする方法と、 xcode-select コマンドで指定する方法の2通りあります。

以下の記事で取り上げた通り、私は前者の方法を使っています。
https://qiita.com/uhooi/items/29664ecf0254eb637951#xcodeの選択不要

おまけ:XcodeのCLIツールの説明はmanが詳しい

xcode-select コマンド以外にも、 xcrunxcodebuild などのコマンドはWeb上に情報が多くありません。
man コマンドによる説明が一番詳しい公式ドキュメントといっても過言ではないので、覚えておくと有用です。

おわりに

「DEVELOPER_DIR」に指定するパスは、「Developer」フォルダと「Xcode.app」のパスのどちらでもいいことがわかりました。
つまりどちらを指定するかは好みです。

私は1で指定していましたが、短いほうがスッキリするので最近は2で指定することが多いです。

  • このエントリーをはてなブックマークに追加
  • Qiitaで続きを読む

MACでPostgreSQLの基本的なDatabeseの作成と削除

はじめに

  • macでpostgresql@10を操作した時なかなか苦戦したので備忘録としての記事を残す。
  • Web開発するときに役立つかも(特にmigration)...

環境

  • Mac: Catalina 10.15.6
  • postgreSQL: postgresql@10

インストール

$ brew install postgresql@10

注意: ちゃんと@10をつけること。最新版が欲しい方は@移行はいらない。
また、

$ brew search postgresql

これを実行すると、どのバージョンがあるか確認できる

$ brew search postgresql 
==> Formulae
postgresql                         postgresql@10 ✔                    
postgresql@11                      postgresql@9.4                     
postgresql@9.5                     postgresql@9.6
==> Casks
navicat-for-postgresql

確認

$ psql -V
psql (PostgreSQL) 10.14

で バージョン確認できる

環境設定

インストールをしたら、まずはじめにPATHを通そう!!
postgresqlがある場所は各自確認しておく.

vimで.bash_profileを開く。

vi .bash_prifile

エディタを開いたらPATHを以下のように通す。

export PATH=$PATH:/usr/local/Cellar/postgresql@10/10.14/bin/

PostgreSQLを起動

バージョン指定した人はpostgresqlの後に@~をつけておく。指定してない人はpostgresqlのままで大丈夫。

$ brew services start postgresql@10

「createdb」コマンドを実行してデータベース「test」を作成する

$ createdb test

データベース一覧を確認する

$ psql -l
                             List of databases
Name      |  Owner  | Encoding |   Collate   |    Ctype    |  Access 
                                                           |  privileges  
---------------+---------+----------+-------------+-------------+---------
postgres   | kanzaki | UTF8   | en_US.UTF-8 | en_US.UTF-8 | 
test       | kanzaki | UTF8   | en_US.UTF-8 | en_US.UTF-8 | 
template0  | kanzaki | UTF8   | en_US.UTF-8 | en_US.UTF-8 | =c/kanzaki  +
           |         |        |             |             | kanzaki=CTc/ 
           |         |        |             |             | kanzaki
template1  | kanzaki | UTF8   | en_US.UTF-8 | en_US.UTF-8 | =c/kanzaki  +
           |         |        |             |             | kanzaki=CTc/ 
           |         |        |             |             | kanzaki
(4 rows)

testというDBが確認できた。

DataBase操作

ここに時間がかかった。恥ずかしながら、Macで\(バックスラッシュ)の表し方を知らずにDBの操作をしようとしていた。

Macで \は様々な表し方はあるがpostgresql@10の自分の環境では、
option + fn + ¥ でDB内で必要な操作ができた。

Databaseにアクセス

$ psql postgres
postgres=#

これでpostgresqlの操作画面に移る。バージョン指定はいらない。

DatabaseからExit

macの場合control + Dでexitできるが、コマンドでは先ほどの\qで出ることができる

postgres=# \q

Database[test]を削除する

$ dropdb test

これで基本的な操作は終了。

削除確認

$ psql -l
                             List of databases
Name      |  Owner  | Encoding |   Collate   |    Ctype    |  Access 
                                                           |  privileges  
---------------+---------+----------+-------------+-------------+---------
postgres   | kanzaki | UTF8   | en_US.UTF-8 | en_US.UTF-8 | 
template0  | kanzaki | UTF8   | en_US.UTF-8 | en_US.UTF-8 | =c/kanzaki  +
           |         |        |             |             | kanzaki=CTc/ 
           |         |        |             |             | kanzaki
template1  | kanzaki | UTF8   | en_US.UTF-8 | en_US.UTF-8 | =c/kanzaki  +
           |         |        |             |             | kanzaki=CTc/ 
           |         |        |             |             | kanzaki
(3 rows)

testのDatabaseが削除されていることを確認。

最後に

  • PostgreSQLの基本的なDatabaseの作成と削除をまとめた。
  • PostgreSQLのコンソール内では様々な操作が可能であるので、今度はその操作も勉強してみたい。

参考文献

PostgreSQLをコマンドラインで操作する
【勉強用】PostgreSQLの基本操作

  • このエントリーをはてなブックマークに追加
  • Qiitaで続きを読む

Mac で pip install mysqlclient が インストールできない時 備忘録

$ brew install mysql

を入れた後

$ pip install mysqlclient

でうまくいったと思う

参考
https://github.com/PyMySQL/mysqlclient-python/issues/131

  • このエントリーをはてなブックマークに追加
  • Qiitaで続きを読む

【メモ】PCのJupyter Notebookを等幅フォント表示にする (Mac)

はじめに

PCで動かすJupyter Notebookは、フォントがデフォルトでプロポーショナルになっているため、出力がガタガタしてなにかと不便。これを等幅フォントに変えるための手順です。
動作確認はMacでしています。

手順

ターミナルを立ち上げて、以下のコマンドを実行します。

$ cd ~/.jupyter
$ mkdir custom
$ cd custom
$ echo '.CodeMirror pre, .output pre { font-family: Monaco, monospace; }' > custom.css

この状態で

$ Jupiter notebook

とすると、numpyの行列も次のようにきれいに表示されます。

スクリーンショット 2020-09-25 9.29.39.png

ご参考までに、上記のコードは私の著作「Pythonで儲かるAIをつくる」の実習コードの一部です。
他のコードを含めて下記リンク先にアップされていますので、関心ある方は参照されて下さい。

https://github.com/makaishi2/profitable_ai_book_info/blob/master/refs/notebooks.md

  • このエントリーをはてなブックマークに追加
  • Qiitaで続きを読む

macとRaspberry Pi 3 Model B+ をサーバ接続してみた

みなさんこんにちは。こんばんは。おはようございます。

?(@hawks__fan)です。

今回は、タイトルにもあるように「macとRaspberry Pi 3 Model B+ をサーバ接続してみた」ことを記事にしていきたい。

準備したもの

Raspberry Pi 3 Model B+ (付随のマイクロSD込)

CF67D32F-98A1-463E-9E8C-B780A034A144.jpeg
D552D771-1E3D-49FB-80C6-C48D55A2AAF0.jpeg
8505B197-7656-4B04-8178-B125787B3001.jpeg

モニタ
キーボード
マウス
HDMIケーブル
MacBook Pro

参考にした記事

•1[超初心者向け]RaspberryPiにOS(Raspbian)をインストールして起動し、vimやScratchが使えるようになるまで

•2Raspberry PiのSSH有効化方法

•3macしかない状況でRaspberry Piに接続してみた

•4Qiita Markdown 書き方 まとめ

できたこと

最初は1の記事
を参考にしながら、作業していたのだが、途中の「SSHを有効化する」の箇所あたりからうまくいかなくなってしまった。

どこがうまくいかなかったのかというと、1の記事の手順で示されていた、SSHを有効化するの箇所だ。

「困ったな」と思いながら、ネットサーフィンをしていると、2の記事を見つけたのだ。

原因は恐らく、自分の所有しているRaspberry Pi 3 Model B+と1の記事で使われていたRaspberry Pi の型が違うためなのかもしれない。

SSHを有効化するための画面が違うのだから分からなかったわけだ…

ここで1の記事はもう役に立たなくなったなと思ったので、また記事を探して発見した記事が3の記事だ。

結果的に、1度はmacとRaspberry Pi 3 Model B+ をサーバ接続できたものの(その時のスクショをとるべきだったorz)、2度目3度目の接続はできなかった。

原因はわからないが、問題はパスワードを要求されて設定したパスワードを入力しても接続できなかったというものだ。

まぁ何をするにしても初めての挑戦には失敗はつきものだ。

また、まとまった時間を作ってトライしてみようと思う。

まとめ

初めてQiitaで記事を書いてみたが、気づいたことがいくつかあったので、雑にまとめておこうと思う。

•1度接続できたのに、2度目3度目で失敗したことを踏まえて、自分の能力不足が原因で再現できなかったのだとしたら悔しいので、再度挑戦してみようと思った。

•Qiitaはユーザーに黙って情報取得していたので、脱退したみたいな記事を読んで、ぴえん?となってしまった。

•何をするにしても失敗はつきものなので、恥ずかしからずに原因を見つけて改善することはだいじだな(小並感)と思った。

それでは。?でした。

  • このエントリーをはてなブックマークに追加
  • Qiitaで続きを読む