#!/usr/bin/bash
LIST=/tmp/list
while [[ "$c" != "2" ]]
do
echo "1 - Enter a name
2 - display $LIST
3 - Exit"
echo "Make your choice 1/2/3: "
read c
case $c in
1)
echo "Enter the name :"
read a
if ( ! grep ^"$a"$ $LIST >/dev/null 2>&1 )
then
echo "$a" >>$LIST
echo "$a has been added to $LIST"
else
echo "filename $a already existing in $LIST, wanna remove it from list y/[n]?"
read q
case $q in
y|Y) grep -v ^"$a"$ $LIST >$LIST.tmp ; mv $LIST.tmp $LIST ; echo "$a removed from $LIST" ;;
n|N) echo "ok $a will stay in $LIST" ;;
*) echo "wrong choice, $LIST will stay as is" ;;
esac
fi
;;
2) cat $LIST ;;
3) exit 0 ;;
*) echo "Wrong choice, try again..." ;;
esac
done
---------- Post updated at 01:25 AM ---------- Previous update was at 12:54 AM ----------
Could modify the code and add something like and call remove_once "$a"
Code:
remove_once(){
flag=0
while read a
do if [ "$a" = "$1" ]
then
if [ $flag -eq 0 ]
then
echo "$a" >>$LIST.tmp
let flag++
fi
else
echo "$a" >>$LIST.tmp
fi
done <$LIST
mv $LIST.tmp $LIST
}
Last edited by ctsgnb; 10-25-2010 at 09:36 AM..
Reason: with indentation ... so Scruti will be happy ;)
I am trying to write a housekeeping bash script. Part of it involves searching all of my attached storage media for photographs and moving them into a single directory. The problem occurs when files have duplicate names, obviously a file called 001.jpg will get overwritten with another file... (6 Replies)
Hello,
I have three lines I need to add to hundreds of files. The files are all in the same format and contain the same information. I want to add the same information to the files.
The new lines of information are similar. Here is an example of the three lines:
line1:
line2 =... (2 Replies)
Hi all:
I have a directory where all of the subdirectories are named by the convention "images_#1:#2_Date." My goal is to get an array for each subdirectory that has the structure (#1,#2, int). I am able to use awk to print each subdirectory's values, but cannot figure out how to get them into an... (6 Replies)
I am attempting to insert multiple lines of text into a specific place in a text file based on the lines above or below it.
For example, Here is a portion of a zone file.
IN NS ns1.domain.tld.
IN NS ns2.domain.tld.
IN ... (2 Replies)
I have several files on a folder something like this:
If the file starts with 1a, I would like to add the following at the very beggining of the file
If the file starts with 1b then I should add the following
For files starting with 6
So on and so forth. Thus, at the end each file will... (18 Replies)
Hello,
I have some files in a directory like:
01_07_2010_aa.txt
01_07_2010_bb.txt
01_07_2010_cc.txt
01_07_2010_dd.txt
01_07_2010_ee.txt
01_07_2010_ff.txt
I want to change their names to :
3nm_aa.txt
3nm_bb.txt
3nm_cc.txt
3nm_dd.txt
3nm_ee.txt
3nm_ff.txt (8 Replies)
Hi is it possible to change multiple files (~10k) names with out disturbing the data in it. ?
input
Hynda|cgr10(+):100027702-1000312480|.txt
Hynda|cgr10(+):100027702-1000312483|.txt
Hynda|cgr10(+):100027702-1000312484|.txt
Hynda|cgr10(+):100027702-1000312482|.txt
output... (4 Replies)
What am I missing?
find: 0652-009 There is a missing conjunction
find: 0652-009 There is a missing conjunction
find: 0652-009 There is a missing conjunction
find: 0652-009 There is a missing conjunction
find: 0652-009 There is a missing conjunction
find: 0652-009 There is a missing... (3 Replies)
list of legal and illegal bash variable names and wht each is either illegal and ligal?
4. Seneca college, Toronto , Canada, peter wheeler, tech 154: (5 Replies)
Discussion started by: renegade755
5 Replies
LEARN ABOUT LINUX
irsend
IRSEND(1) User Commands IRSEND(1)NAME
irsend - basic LIRC program to send infra-red commands
SYNOPSIS
irsend [options] DIRECTIVE REMOTE CODE [CODE...]
DESCRIPTION
Asks the lircd daemon to send one or more CIR (Consumer Infra-Red) commands. This is intended for remote control of electronic devices such
as TV boxes, HiFi sets, etc.
DIRECTIVE can be:
SEND_ONCE - send CODE [CODE ...] once
SEND_START - start repeating CODE
SEND_STOP - stop repeating CODE
LIST - list configured remote items
SET_TRANSMITTERS - set transmitters NUM [NUM ...]
SIMULATE - simulate IR event
REMOTE is the name of a remote, as described in the lircd configuration file.
CODE is the name of a remote control key of REMOTE, as it appears in the lircd configuration file.
NUM is the transmitter number of the hardware device.
For the LIST DIRECTIVE, REMOTE and/or CODE can be empty:
LIST "" "" - list all configured remote names
LIST REMOTE "" - list all codes of REMOTE
LIST REMOTE CODE - list only CODE of REMOTE
The SIMULATE command only works if it has been explicitly enabled in lircd.
-h --help
display usage summary
-v --version
display version
-d --device
use given lircd socket [/var/run/lirc/lircd]
-a --address=host[:port]
connect to lircd at this address
-# --count=n
send command n times
EXAMPLES
irsend LIST DenonTuner ""
irsend SEND_ONCE DenonTuner PROG-SCAN
irsend SEND_ONCE OnkyoAmpli VOL-UP VOL-UP VOL-UP VOL-UP
irsend SEND_START OnkyoAmpli VOL-DOWN ; sleep 3
irsend SEND_STOP OnkyoAmpli VOL-DOWN
irsend SET_TRANSMITTERS 1
irsend SET_TRANSMITTERS 1 3 4
irsend SIMULATE "0000000000000476 00 OK TECHNISAT_ST3004S"
FILES
/etc/lirc/lircd.conf
Default lircd configuration file. It should contain all the remotes, their infra-red codes and the corresponding timing and wave-
form details.
DIAGNOSTICS
If lircd is not running (or /var/run/lirc/lircd lacks write permissions) irsend aborts with the following diagnostics:
"irsend: could not connect to socket"
"irsend: Connection refused" (or "Permission denied").
SEE ALSO
The documentation for lirc is maintained as html pages. They are located under html/ in the documentation directory.
lircd(8), mode2(1), smode2(1), xmode2(1), irrecord(1), irw(1), http://www.lirc.org.
irsend 0.9.0-pre1 October 2010 IRSEND(1)