01-26-2020
I gave brief explanations as comments in the code.
The following are comprehensive ones:
while condition - do - done
is a loop. The condition is the read command that reads a line from the standard input (here: the pipe i.e. the output from the previous command); the exit status is 0 (true) if the read could read something, then the loop continues, trying to read the next line. Finally, if nothing can be read, the exit code is not 0 (false) and the loop ends.
The read fn command reads the line into the fn variable. By default it strips leading spaces from the input; this is prevented by temporary setting the environment variable IFS to nothing. Further, read by default does special treatment with \ characters in the input; this behavior is turned off with the -r option.
(Compare this loop with the other loop where condition is always true so it never ends.)
The fn2 variable is assigned a string that is a concatenation of ${fn%.TXT} and .LST. The first is the value from variable fn with a modifier. The % modifier strips the following pattern from the end. (Compare with an unmodified value ${fn} (that is in short $fn).)
These 3 Users Gave Thanks to MadeInGermany For This Post:
10 More Discussions You Might Find Interesting
1. Shell Programming and Scripting
I have a text file that has blocks of text. Each block starts with ### and ends with End_###.
I wrote a perl script to search a string from line 2 (ignore any line starts with ###) of each block
if matched, need to print that whole block. According to the input file in below, it will print... (5 Replies)
Discussion started by: tqlam
5 Replies
2. UNIX for Dummies Questions & Answers
Hi,
I have already read a lot of posts on sending attachments in unix...but none of them were of help for my problem...so here goes..
i wanna attach a text file and send to a mail id..used the following code :
uuencode "$File1" "$File1" ;|mail -s "$Mail_sub" abc@abc.com
it works... (2 Replies)
Discussion started by: ash22
2 Replies
3. Shell Programming and Scripting
Hi Guys and Gals,
I'm having some difficulty putting this check into a shell script. I would like to search a particular directory for a number of files. The logic I have is pretty simple:
Find file named *.txt that are newer than <this file> and count them
If the number of files is equal to... (4 Replies)
Discussion started by: bbbngowc
4 Replies
4. Shell Programming and Scripting
BASH problem with IS GREATER THAN OR EQUAL TO.
I have tried a dozen variations for this IF statement to work with IS GREATER THAN OR EQUAL TO. My code below WORKS.
array=( $( /usr/bin/sar -q 1 30 |grep Average |awk '{print $2,$3}' ) )
nthreads="${array}"
avproc="${array}"
if && ; then ... (6 Replies)
Discussion started by: diex
6 Replies
5. Shell Programming and Scripting
I have multiple txt files which begin with the word "orders" in folder C:\source. I need to move the files to folder C:\dest and rename them to "process_<date>_<count>"
So for example , if there are 3 files ordersa.txt , ordersb.txt and ordersc.txt in C:\source , after running the script I want... (1 Reply)
Discussion started by: johannd
1 Replies
6. UNIX for Dummies Questions & Answers
I have multiple txt files which begin with the word "orders" in folder C:\source. I need to move the files to folder C:\dest and rename them to "process_<date>_<count>"
So for example , if there are 3 files ordersa.txt , ordersb.txt and ordersc.txt in C:\source , after running the script I want... (7 Replies)
Discussion started by: johannd
7 Replies
7. UNIX for Dummies Questions & Answers
I am not able to find menu.lst in /boot.
During the Linux Kernel Compilation I installed the kernel using make install.
Next I created an initrd image.
I had to modify the Grub configuration file - /boot/grub/menu.lst which I am not able to find.
Any resolution for the issue? (3 Replies)
Discussion started by: rupeshkp728
3 Replies
8. UNIX for Dummies Questions & Answers
Hi ,
i have some files of specific pattern ...i need to look for files which are having size greater than zero and move those files to another directory..
Ex...
abc_0702,
abc_0709,
abc_782
abc_1234 ...etc
need to find out which is having the size >0 and move those to target directory..... (7 Replies)
Discussion started by: dssyadav
7 Replies
9. Windows & DOS: Issues & Discussions
so...
Lets assume I have a text file.
The text file contains multiple "#" symbols.
I want to replace all thos "#"s with a STRING using DOS/Batch
I want to add a certain TEXT to the end of each line.
How can I do this WITHOUT aid of sed, grep or anything linux related ? (1 Reply)
Discussion started by: pasc
1 Replies
10. UNIX for Beginners Questions & Answers
I have two csv files of different sizes. The output file needs to have file1 contents on top of file2 contents where file2 col1 is >= to file1 col1, and file2 col1(same value) is < file1 col1 (next value). So basically, some file2 rows will be matched to the same file1 row because it is the closet... (7 Replies)
Discussion started by: aachave1
7 Replies
LEARN ABOUT OPENSOLARIS
txtrecordremovevalue
TXTRecordCreate(3DNS_SD) DNS Service Discovery Library Functions TXTRecordCreate(3DNS_SD)
NAME
TXTRecordCreate, TXTRecordDeallocate, TXTRecordSetValue, TXTRecordRemoveValue, TXTRecordGetLength, TXTRecordGetBytesPtr, TXTRecordCon-
tainsKey, TXTRecordGetValuePtr, TXTRecordGetCount, TXTRecordGetItemAtIndex - DNS TXT record manipulation functions
SYNOPSIS
cc [ flag ... ] file ... -ldns_sd [ library ... ]
#include <dns_sd.h>
void TXTRecordCreate(TXTRecordRef *txtRecord, uint16_t bufferLen,
void *buffer);
void TXTRecordDeallocate(TXTRecordRef*txtRecord);
DNSServiceErrorType txtRecord(TXTRecordRef *txtRecord,
const char *key, uint8_t valueSize, const void *value);
DNSServiceErrorType TXTRecordRemoveValue(TXTRecordRef *txtRecord,
const char *key);
uint16_t TXTRecordGetLength(const TXTRecordRef *txtRecord);
const void *TXTRecordGetBytesPtr(const TXTRecordRef *txtRecord);
int *TXTRecordContainsKey(uint16_t *txtLen,
const void *txtRecord, const char *key);
const void *TXTRecordGetValuePtr(uint16_t *txtLen,
const void *txtRecord, const char *key,
uint8_t *valueLen);
uint16_t *TXTRecordGetCount(uint16_t *txtLen,
const void *txtRecord);
DNSServiceErrorType TXTRecordGetItemAtIndex(uint16_t *txtLen,
const void *txtRecord, uint16_t *index,
uint16_t *keyBufLen, char *key,
uint8_t *valueLen, const void **value);
DESCRIPTION
These functions in the libdns_sd library allow applications to create and to manipulate TXT resource records. TXT resource records enable
applications to include service specific information, other than a host name and port number, as part of the service registration.
ATTRIBUTES
See attributes(5) for description of the following attributes:
+-----------------------------+-----------------------------+
| ATTRIBUTE TYPE | ATTRIBUTE VALUE |
+-----------------------------+-----------------------------+
|Interface Stability |Committed |
+-----------------------------+-----------------------------+
|MT-Level |Safe |
+-----------------------------+-----------------------------+
SEE ALSO
attributes(5)
SunOS 5.11 20 Aug 2007 TXTRecordCreate(3DNS_SD)