Skip to content

Instantly share code, notes, and snippets.

View keijidosha's full-sized avatar

keijidosha

  • Kyoto, Japan
View GitHub Profile

チェック

  • null または空文字列かどうかを判定
    if( hoge.isNullOrEmpty()) {
        println( "Nullか空文字列" )
    }
  • null または空文字列、またはブランク(複数のスペース)かどうかを判定

クラスを扱う

this

Java

public class Hoge {
    public Hoge hoge2() {
        return this;
    }
}

vararg

vararg にひとつだけのパラメータを渡す場合、次のように書くと 1.2 から警告が出力されるようになる。 (1.3 からはコンパイルエラーになる??)

val s = "abc,def"
println( s.split(delimiters = ','))

warning: assigning single elements to varargs in named form is deprecated

What's New in Kotlin 1.2: Deprecation: single named argument for vararg

拡張プロパティ

val String.firstChar: Char
    get() = charAt(0)
val String.moreThan3Char: Boolean
    get() = length >= 3

拡張関数を動的に切り替えるサンプル

方法1

操作

  • シングルユーザモードで起動。
    1. 起動時に表示されるカウントダウンの画面で何かキーを押す。
    2. パーティションの一覧が表示されるので e を押す。
    3. xxxKernelxxx を選択して e(edit)を押す。
    4. パラメータの最後に single を入力して Enter を押す。
    5. b(boot)を押して起動する。
      この時 /(ルートディレクトリ)はリードオンリーでマウントされています。 そのため、設定ファイルの編集などはできません。 読み書き可能にするためには、再マウントします。

mount -n -o remount,rw /dev/hda1

ネットワークインターフェースの通信速度を設定

  • 100Mbps に設定する場合
    ifconfig eth0 media 100baseTX
    
    または /etc/conf.modules に
    alias eth0 tulip
    options tulip options=100baseTX
    

ボリュームグループをマウント

  • ボリュームグループを検索
    lvm vgscan
    Reading all physical volumes. This may take a while… Found volume group “VolGroup00” using metadata type lvm2
    
  • ボリュームグループを使用可に設定
    lvm vgchange -a y 2
    

logical volume(s) in volume group “VolGroup00” now active

  • 使用可能なファイルシステムの一覧を表示
    cat /proc/filesystems
  • CD のマウント指定を /etc/fstab に記述(CentOS 4.4を参考)
    1. マウントポイント作成
      mkdir /cdrom
    2. 下記内容を /etc/fstab に追記。
      /dev/cdrom /cdrom auto pamconsole,fscontext=system_u:object_r:removable_t,exec,user,ro,noauto,managed 0 0
      
  • user

rsync で指定するパス

  • (正解) /var/log が /opt/log にコピーされます。
    rsync -auv /var/log/ /opt/log/
  • (間違い) /var/log が /opt/log/log としてコピーされます。
    rsync -auv /var/log /opt/log/
  • (間違い) /var/log が /opt/log/log としてコピーされます。
    rsync -auv /var/log /opt/log
  • (正解) /var/log が /opt/log にコピーされます。
    rsync -auv /var/log /opt
  • tar ファイルに圧縮後、圧縮したファイルを削除。
    tar zcvf xxx.tar.gz –remove-files *.txt
    
  • tar ファイルに格納されたファイルの内容を画面に表示
    • すべてのファイルを画面に表示
      tar zxOf xxx.tar.gz
      
  • 特定のファイルを画面に表示