2017年11月19日日曜日

古いカーネルの削除 purge-old-kernels

古いカーネルの削除 purge-old-kernels

xubuntu16.04LTS, ubuntu16.04派生, linux
2017 Jun. 03.

インストール

# aptitude install byobu

利用

# purge-old-kernels

# purge-old-kernels --keep 3
     :--keep : 残すカーネルの数を指定

shell

shell

shell script, シェル, シェルスクリプト
2017 Dec. 09.
2017 Nov. 20.
2017 Nov. 19.

文字列展開・変数展開

展開の順序
  ブレース展開、チルダ展開、パラメータ ・変数・算術式展開、コマンド置換 (左から右へ)、単語分割、パス名展開。

 引用符を使うと、 特定の文字や単語が持つシェルに対する特別な意味をなくせる。
 引用符を用いると、特殊文字の特殊な扱いを無効にしたり、 予約語が予約語として識別されることを防いだり、 パラメータの展開を防いだりできる。

引用符で囲むのは各種展開をしたくない場合
  " と ' で、抑止される展開の範囲に違いがあるが、展開をしたい場合は囲まない。

 DIR=~/ :引用符で囲んでいないので、展開のルールに従って展開される。チルダ展開が行われる。

 DIR="~/" :二重引用符で囲んであるので、チルダの特殊な意味が無くなっている。チルダ展開は行われない。


 変数展開

${#VAR}     `${#変数名}' とすると変数の値の文字数が得られる

デスクトップ上でフォーカスのある(アクティブな)ウィンドウを取得

xpropを利用する。

デスクトップ上でフォーカスのあるウィンドウを取得した上で、画像を表示し、1秒後にフォーカスのあったウィンドウにフォーカスを戻す例
  activeWin=`xprop -root _NET_ACTIVE_WINDOW`
  activeWinId=`echo ${activeWin} | grep -Eo '0x[0-9a-fA-F]+,' | grep -Eo '0x[0-9a-fA-F]+'`
  display hoge.jpg
  sleep 1
  wmctrl -i -R ${activeWinId}

ファイルの1行ずつの読み込み

cat $1 | while read line
do
  # DO-SOMETHING
  echo $line
done

sedの先頭行番号は1

sedの先頭行番号は1

シェルスクリプト, shell script
2018 Jan. 22.
2017 Nov. 19.


先頭行の番号:1



2017年10月1日日曜日

java Scanner#nextLine()にEnterキーのみを入力すると "" が入る

2017 Oct. 01.

Scanner scanner = new Scanner(System.in);
String line = scanner.nextLine();
入力待ちにEnterキーのみを押し下げるとlineには "" が入る。nullが入るのではない。


2017年9月14日木曜日

iPhone7内データをlinuxパソコンに。インターネット・クラウド・iTunesを使わずに。windowsでもできる

iPhone7内データをlinuxパソコンに。
インターネット・クラウド・iTunesを使わずに。
windowsでもできる。

2017 Sep. 14.

必要なもの
iPhone7
FileExplorer(iPhoneアプリ)
家庭内無線LAN環境(インターネットにつながっていなくてよい)
IPアドレスが割り当てられ、家庭内LANに加わっているLANポートのあるlinuxパソコン

操作
iPhone7にFileExplorerをインストールする。
iPhone内のコピー元ファイルを、そのファイルのデフォルトアプリ内の「共有」などを使って、FileExplorerで見られるフォルダにコピーする。
iPhoneの設定からWi-Fiを有効にし、家庭内LANに接続する。
FileExplorerを開き、画面右上の「+」を押し、「Linux/Unix」を選択し、IPアドレス・id・パスワードなどを入力してlinuxパソコンと接続する。
FileExplorerでiPhone内のファイルをパソコンにコピーする。
以上

2017年8月20日日曜日

mail 日本語対応

mail 日本語対応

2017 Aug. 20.
mail,日本語,文字化け

msg="sentense"
subject="title"
mailDest="abc@xx def@yy ghi@zz"

echo -e "${msg}" | nkf -j  | mail -s `echo "${subject}" | nkf -jM` $mailDest

postfix設定

2018 Sep. 23.
2017 Aug. 20.

このページは無視して、こちらを参照すればよい。


myhostname = gmeil.com, mydomain = gmail.com と設定したら、gmailへのメールが届かな
い。
no-ipで取得しているドメイン名にしたらgmailへのメールが届いた。
設定後、 # systemctl restart postfix.service。
# systemctl restart postfix ではだめのよう。



[/etc/postfix/main.cf]

smtpd_banner = $myhostname ESMTP $mail_name (Ubuntu)
biff = no
append_dot_mydomain = no
readme_directory = no
# TLS parameters
smtpd_tls_cert_file=/etc/ssl/certs/ssl-cert-snakeoil.pem
smtpd_tls_key_file=/etc/ssl/private/ssl-cert-snakeoil.key
smtpd_use_tls=yes
smtpd_tls_session_cache_database = btree:${data_directory}/smtpd_scache
smtp_tls_session_cache_database = btree:${data_directory}/smtp_scache
# See /usr/share/doc/postfix/TLS_README.gz in the postfix-doc package for
# information on enabling SSL in the smtp client.
smtpd_relay_restrictions = permit_mynetworks permit_sasl_authenticated defer_unauth_destination
myhostname = xxxx.no-ip.info
mydomain = xxxx.no-ip.info
alias_maps = hash:/etc/aliases
alias_database = hash:/etc/aliases
myorigin = $mydomain
mydestination = $myhostname, localhost.$mydomain, localhost, $mydomain
relayhost = [smtp.gmail.com]:587
mynetworks = 127.0.0.0/8 192.168.1.0/24
mailbox_command = procmail -a "$EXTENSION"
mailbox_size_limit = 0
recipient_delimiter = +
inet_interfaces = all
inet_protocols = ipv4
smtp_helo_name = $myhostname
smtp_sasl_auth_enable = yes
smtp_sasl_mechanism_filter = plain
smtp_sasl_password_maps = hash:/etc/postfix/gmail_passwd
smtp_sasl_security_options = noanonymous
smtp_sasl_tls_security_options = noanonymous
smtp_use_tls = yes
smtp_tls_CApath = /etc/ssl/certs/ca-certificates.crt