CentOS 6でgcc 4.8

表題を行いたい。

■ 環境

  • CentOS 6.9
  • Vagrant 2.1.1
  • macOS High Sierra

■ gcc

CentOS 6.9での`gcc`のversionは下記であった。

$ gcc --version
gcc (GCC) 4.4.7 20120313 (Red Hat 4.4.7-18)
Copyright (C) 2010 Free Software Foundation, Inc.
This is free software; see the source for copying conditions.  There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.

$

C++11“を使いたいことがあり、もう少し新しい`gcc`をCentOS 6.9で使用したい。

■ DevToolSet

調べると”DevToolSet“なるものがあるらしい。下記のようにして使用することができた。

$ cat > /etc/yum.repos.d/DevToolset.repo <<-"EOF"
[DevToolset-2]
name=RedHat DevToolset v2 $releasever - $basearch
baseurl=http://puias.princeton.edu/data/puias/DevToolset/$releasever/$basearch/
enabled=1
gpgcheck=0
EOF
$
$ yum install -y devtoolset-2-toolchain devtoolset-2-perftools
  :
$
$ scl enable devtoolset-2 bash
$
$ which gcc
/opt/rh/devtoolset-2/root/usr/bin/gcc
$
$ gcc --version
gcc (GCC) 4.8.2 20140120 (Red Hat 4.8.2-15)
Copyright (C) 2013 Free Software Foundation, Inc.
This is free software; see the source for copying conditions.  There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.

$

一時的に使用したいだけなのでこれで十分であった。

以上。

DNS逆引き1行版

表題について。以前の正引きを1行で確認するのに逆引きでもOKなのかな?まぁOKだろうな、と思い一応確認である。

■ 環境

  • Linux
  • macOS High Sierra

■ dig

正引きで、1行で取得するには下記にした。

$ dig +noall +answer example.com

逆引きする時も1行で取得できればスクリプトで利用しやすいな、と思い確認。

$ dig +noall +answer -x 8.8.8.8
8.8.8.8.in-addr.arpa.    10703    IN    PTR    google-public-dns-a.google.com.
$

問題なさげである。

以上。

■ 関連

dig +answer

指定フィールド以前を全取得

表題の通り。先のエントリの逆バージョンである。

■ 環境

  • Linux
  • macOS High Sierra

■ cut

先のエントリでは”指定フィールド以降“を下記のように取得した。

cut -d ' ' -f 4- test.txt

“を逆にすれば”以前“でも取得できるはずだよな、と思って実践。

cut -d ' ' -f -4 test.txt
a b c d
aa bb cc dd
1 2 3 4
11 22 33 44
$

問題なく取得できた。

以上。

■ 関連

指定フィールド以降を全取得

gzipファイルを連結

表題の通り。

■ 環境

  • macOS High Sierra

■ cat

複数のgzipで圧縮されたCSVファイルがある。これを1つにまとめたい。`gzip`で圧縮されたファイルは単純に`cat`で結合することが可能である。

$ ls
1.csv.gz   2.csv.gz
$

それぞれの行数を確認する。

$ gzcat 1.csv.gz | wc -l
1452
$
$ gzcat 2.csv.gz | wc -l
2304
$

`cat`で結合する。

$ cat 1.csv.gz 2.csv.gz > 3.csv.gz

行数を確認する。

$ gzcat 3.csv.gz | wc -l
3756
$

以上。

■ 関連

zcat & gzcat

parrot on Docker

表題のLinuxディスとリビューションについて。

■ 環境

  • Parrot 4.0
  • Docker for Mac
  • macOS High Sierra

■ parrot

先日のニュースで”parrot“なるセキュリティに特化したLinuxディストリビューションの存在を知り、少々時間が取れたので試してみることにした。

Parrot Project
https://www.parrotsec.org/

手っ取り早く触ってみるにはDockerだろう、ということでDockerイメージをダウンロードして試す。

$ docker pull parrotsec/parrot

コンテナイメージのサイズが少々大きく1.5Gほどある。

$ docker run -ti --network host parrotsec/parrot
┌─[root@linuxkit-025000000001]─[/]
└──╼ #
┌─[root@linuxkit-025000000001]─[/]
└──╼ #cat /etc/os-release
PRETTY_NAME="Parrot GNU/Linux 4.0"
NAME="Parrot GNU/Linux"
ID=parrot
ID_LIKE=debian
VERSION="4.0"
VERSION_ID="4.0"
HOME_URL="https://www.parrotsec.org/"
SUPPORT_URL="https://community.parrotsec.org/"
BUG_REPORT_URL="https://dev.parrotsec.org/"
┌─[root@linuxkit-025000000001]─[/usr/local]
└──╼ #

Debian系のOSのようで、`apt`コマンド等が存在した。

デスクトップはMateのようである。これはVirtualBox等に入れて試してみようか。

以上。

■ 関連

Kali Linux on Docker