Support
Quality
Security
License
Reuse
kandi's functional review helps you automatically verify the functionalities of the libraries and avoid rework.
Currently covering the most popular Java, JavaScript and Python libraries. See a Sample Here
Get all kandi verified functions for this library.
kaldi-asr/kaldi is the official location of the Kaldi project.
QUESTION
Is this sed command valid?
Asked 2022-Jan-15 at 08:48I have 2 lines of sed that I have trouble understanding
I understand that the syntax of sed is :
sed OPTIONS [SCRIPT] [INPUTFILE]
but in this command below there is no input file I am just curious what this is doing, any help is very much appreciated
1.
$(echo $d | sed 's/.*\///g')#
cat /kaldi/README | sed "s/akiplaner/${n}/g" > extracted/$nf/etc/README #
*note : below is the whole code
for d in /dir1/dataset/audios/*; do
echo $d
n=$(echo $d | sed 's/.*\///g') #
nf=${n}
echo $n $a $nf
mkdir -p extracted/$nf/wav
mkdir -p extracted/$nf/etc
rm -f extracted/$nf/etc/prompts-original
rm -f extracted/$nf/etc/PROMPTS
cat /kaldi/README | sed "s/akiplaner/${n}/g" >extracted/$nf/etc/README #
for f in $d/*.wav; do
n2=$(echo $f | sed 's/.*\///g')
n3=$(echo $n2 | sed 's/\.wav//g') # removing .wav from $n2 string
echo $n2
echo $n3
cp $f extracted/$nf/wav/$n2
#sox --vol 0.01 $f -t wav extracted/$nf/wav/$n2;
normalize-audio -a 0.3 extracted/$nf/wav/$n2
cp $d/$n3.txt temp.txt
echo "$n3 $(cat temp.txt)" >>extracted/$nf/etc/prompts-original
echo "${nf}/mfc/${n3} $(cat temp.txt)" >>extracted/$nf/etc/PROMPTS
done
a=$(($a + 1))
done
ANSWER
Answered 2022-Jan-15 at 08:48there is no input file I am just curious what this is doing
The answer is at your fingertips.
$ LC_ALL=C sed --help
...
... if no input files are
specified, then the standard input is read.
Note: |
shell operator connects one command standard output to another command's standard input. There are surely endless resources on the internet for basic introduction to shell streams and input output operations - it might be a good occasion to research some of them, like https://mywiki.wooledge.org/BashGuide/InputAndOutput .
sed OPTIONS [SCRIPT] [INPUTFILE]
It's:
$ LC_ALL=C sed --help
Usage: sed [OPTION]... {script-only-if-no-other-script} [input-file]...
The stuff in [...]
is optional. ...
represents stuff it can be repeated.
There are man problems with the script - it will break on filenames with spaces or newlines in the name or on filenames with *
in the name... Remember to check your scripts with shellcheck - it will catch such mistakes.
's/.*///g' am I correct in saying this pattern is removing any file or folder whose name starts with
From a line of text it removes everything .*
before a /
slash. You can learn regex with fun with https://regexcrossword.com/ and sed here https://www.grymoire.com/Unix/Sed.html .
It's an odd way of writing basename "$n"
and the next line is just basename "$n" .wav
.
Community Discussions, Code Snippets contain sources that include Stack Exchange Network
No vulnerabilities reported
Save this library and start creating your kit
See Similar Libraries in
Save this library and start creating your kit
Open Weaver – Develop Applications Faster with Open Source