Dengan menggunakan grep, kita bisa mengambil kata yang berada diantara dua pemisah. Untuk mendapatkan hasil yang diinginkan kita akan menggunakan parameter -o --only-matching dan -P, --perl-regexp.

Contoh kita memiliki file server.conf yang berisi

SERVER_MYSQL1_USERNAME
SERVER_MYSQL1_PASSWORD
SERVER_MYSQL2_USERNAME
SERVER_MYSQL2_PASSWORD
SERVER_REDIS_CACHE_USERNAME
SERVER_REDIS_CACHE_PASSWORD
SERVER_REDIS_SYNC_USERNAME
SERVER_REDIS_SYNC_PASSWORD

Untuk mengambil kata diantara SERVER_ (prefix) dan _PASSWORD (suffix)

for i in $(cat server.conf); do echo $i | grep -o -P '(?<=SERVER_).*(?=_PASSWORD)'; done
# output
MYSQL1
MYSQL2
REDIS_CACHE
REDIS_SYNC

ambil string diantara dua pemisah

Leave a comment

Your email address will not be published. Required fields are marked *