べすとえふぉーと

プログラミング等のノート 

SQLiteでDBのマージ

マージ先のDBを開いてる状態で実行 sqlite> attach database 'old_db.db' as old1; sqlite> begin; sqlite> insert into main.test_table(col1,col2,col3) select col1,col2,col3 from old1.test_table; sqlite> commit;'old_db.db'はマージ元のファイル

Fedora28 xfce

sudo dnf groupinstall -y "Xfce Desktop"

urlのテキストをxargsでwgetに渡す

nc以降はオプション cat url.txt | xargs -I % wget % -nc --no-check-certificate --timeout=10

Raspberry Piの解像度設定(Raspbian Jessie)

ファイルは/boot/config.txtdisable_overscan=1をコメントアウト disable_overscan=1以下のように設定 overscan_left=24 overscan_right=24 overscan_top=10 overscan_bottom=24 framebuffer_width=1280 framebuffer_height=800

sqliteで結果をファイル出力

SQL

.outputでファイル名指定 .output output_file.txt select some_text from some_table;

Pythonでvenv

他にもいろいろあるけど自分はこれで mkdir somedir python3 -m venv somedir/ source somedir/bin/activate

python http getでデコードエラーが出た場合に文字を無視する

UnicodeDecodeError: 'utf-8' codec can't decode byte無視する場合は errors='ignore'をつける response = urllib.request.urlopen(req) charset = response.headers.get_content_charset() if charset==None: charset = "utf-8" html = response.read().de…

URLを含むテキストが入ったディレクトリに対してwget実行

#!/bin/bash dirs=$(ls -F | grep /) rootdir=$(pwd) for dir in $dirs do cd $rootdir/$dir filenames=$(find . -name "*.txt" | cut -c 3-) for file in $filenames do wget -i $(pwd)/$file -nc --no-check-certificate -U "" rm $(pwd)/$file done done

curlでDropboxにアップロード(v2)

v1が使えなくなったのでv2modeをoverwriteで上書き curl -X POST https://content.dropboxapi.com/2/files/upload \ --header "Authorization: Bearer $KEY" \ --header "Dropbox-API-Arg: {\"path\": \"/file.txt\",\"mode\": \"overwrite\",\"autorename\"…

2つのディレクトリにあるファイルを比較して差分のあるファイルを表示

dir1とdir2がパス diff -qr dir1/ dir2/ | grep "Files" | cut -d ' ' -f2

パイプで渡された文字の前に特定の文字列をつける

16進の値が渡ってきたとして、前に0xをつける echo "A2" | awk '{print "0x" $1}'

RedmineでSSL

Apacheは設定してある前提Redmineの管理->設定->全般のプロトコルを[HTTPS]に変更production.rbの最下部に以下を追加 config.force_ssl = trueApacheを再起動 sudo service apache2 restart

Apache2で443を待ち受けるようにする

以下コマンドを実行 sudo a2enmod ssl sudo a2ensite default-ssl sudo service apache2 restart/etc/apache2/ssl.confの443の部分を Listen 443に変更もう一回Restart sudo service apache2 restartポートが開いてるかは他のPCからnmapで確認可能空いてない…

apt-getでHash sum mismatchが出る場合の対処

sudo rm -rf /var/lib/apt/lists/* sudo apt-get update

MacにJupyter Notebookをインストールして起動

sudo pip3 install jupyter mkdir jupyter cd jupyter jupyter notebook --generate-config jupyter notebook password jupyter notebooklocalhost:8888/で開く パスワードのファイル jupyter_notebook_config.json は /Users/$ユーザー/.jupyter/ に保存さ…

ディレクトリ内にあるファイル名だけを抽出

find dir/ -type f | awk -F "/" '{ print $NF }'dirが抽出対象のディレクトリ

gitのログから変更したファイルを抽出してcsvに出力

git log $starthash...$endhash --name-only \ | grep -e "src" -e "config" \ | grep -v "exclude_string_1" \ | grep -v "exclude_string_2" \ | sort \ | uniq \ | xargs find > ../pathlist.txt 2>/dev/null ; cat ../pathlist.txt \ | awk -F "/" '{ pr…

sedで文字列置換

普通に置き換え echo hogepiyohoge | sed -e "s/piyo/hoge/g"空白に置き換え echo hogepiyohoge | sed -e "s/piyo//g"

sedで#が入ってる行を削除、空白行も削除する

例はhttpd.conf 動作は未確認 cat httpd.conf | sed '/\#/d' | sed '/^$/d' > out_httpd.conf

cut,sedの使い方メモ

最初の11文字を除去 cut -c 11-2文字目以降を取り出す cut -c 2-ダブルクォートを除去 sed -e "s/\"//g"

Ubuntu 14.04 apacheのLet'sEncryptをdisable

下記コマンドを実行 a2dissite 000-default-le-ssl.conf service apache2 reload

Ubuntu 14.04 apacheでcertbotを設定

インストール sudo apt-get update sudo apt-get install software-properties-common sudo add-apt-repository ppa:certbot/certbot sudo apt-get update sudo apt-get install python-certbot-apache 実行 $ sudo certbot --apacheメールを聞かれるので入…

apt-getでIPV6アドレスに接続できない場合

IPV4使用のオプション -o Acquire::ForceIPv4=true をつける apt-get -o Acquire::ForceIPv4=true update apt-get -o Acquire::ForceIPv4=true upgradeinstallの場合も同じ

Fedora26にcakephp3を入れる

sudo dnf install php-cli sudo dnf install php-intl sudo dnf install php-mbstring sudo dnf install php-pdo sudo dnf install php-pdo_mysql curl -sS https://getcomposer.org/installer | php composer create-project --prefer-dist cakephp/app sam…

ufwがOpenVZ環境でエラーになる

/etc/default/ufwを開く以下をコメントアウト IPV6=YES IPT_MODULES="nf_conntrack_ftp nf_nat_ftp nf_conntrack_netbios_ns"

UbuntuにCakePHPインストール中、intlで怒られる

PHP

intlで怒られた場合 requires ext-intl php5-intlをインスコ sudo apt-get install php5-intl

swapの追加

Fedora26で確認 sudo su dd if=/dev/zero of=myswap bs=1M count=3000 chmod 600 myswap mkswap myswap swapon myswap echo "/home/user/myswap swap swap defaults 0 0" >> /etc/fstab swapon -s

lsの結果をxargsでcpに渡す

cd で移動して lsをxargsでcpへ #cd /path/src #ls | xargs -I % cp % /path/to

rm: Argument list too longが出た場合

特にファイル名等に指定がない場合 find . -print | grep "./" | xargs rm

ハーブの乾燥方法

ペーパータオルに挟んで電子レンジ 6Wで2分40秒〜3分程度 1回チン 実績 ・レモンバーム 2分40秒 ・セントジョーンズワート 3分