Удаление расширения в имени файла в HDFS с помощью сценария оболочки - PullRequest
0 голосов
/ 24 октября 2018

Пожалуйста, помогите мне, как удалить расширение в имени файла в HDFS, используя сценарий оболочки Unix.

Например, мое первоначальное имя файла - sample.txt.gz.Я хочу удалить .gz в имени файла.

Вот что я сделал до сих пор.

#Parameters 

baseDirHdfs=${1} dss=${2} ds=${3} processDirHdfs=${4} filename=${5} kerberosKeytab=${6} kerberosPrincipal=${7}

kinit -kt ${kerberosKeytab} ${kerberosPrincipal}

#Removing .gz extension 

newFilename=echo ${filename} | cut -f1-6 -d '.'

#Decompressing .GZ Files 

hdfs dfs -cat /${baseDirHdfs}/${dss}/${ds}/${processDirHdfs}/${filename}|gzip -d|hdfs dfs -put - /${baseDirHdfs}/${dss}/${ds}/${processDirHdfs}/${newFilename}

1 Ответ

0 голосов
/ 24 октября 2018

Обычно имя файла и расширения разделяются dot(.)

Итак, что-то вроде этого сделает это:

mayankp@mayank: $file=myfile.sh
mayankp@mayank: $file_name=`echo $file| awk -F'.' '{print $1}'`
mayankp@mayank: $echo $file_name
myfile

Дайте мне знать, если это поможет.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...