Difference between revisions of "FAQ amulecmd"

From AMule Project FAQ
Jump to: navigation, search
(Show downloads in a nicely formatted list)
 
(13 intermediate revisions by 8 users not shown)
Line 1: Line 1:
'''How can I configure amulecmd to schedule actions? (Linux)'''
+
<center>'''English''' |
 +
[[FAQ_amulecmd-de|Deutsch]]
 +
</center>
 +
 
 +
== How can I configure amulecmd to schedule actions? (Linux) ==
  
 
You have to configure such jobs with crontab. Let's do it by example:<br>
 
You have to configure such jobs with crontab. Let's do it by example:<br>
 
:bash ~# crontab -e
 
:bash ~# crontab -e
:00 6 &nbsp; * * * amulecmd -c "setupbwlimit 20"
+
:00 6 &nbsp; * * * amulecmd -c "set bwlimit up 30"
:00 22 * * * amulecmd -c "setupbwlimit 0"
+
:00 22 * * * amulecmd -c "set bwlimit up 0"
Will set your download bandwith limit to 20 kb/s on 6:00am and unlimited on 10:00pm. For more possibilities see also [[aMuleCMD]] .
+
Will set your download bandwith limit to 30 kb/s on 6:00am and unlimited on 10:00pm. For more possibilities see also [[aMuleCMD]].
 +
 
 +
== I cannot connect to [[aMuled]]. It seems [[aMuled]] does not create the listening port for connecting to it :-\? ==
 +
 
 +
You have probably not enabled [[External Connections]] in ''~/.aMule/amule.conf
 +
 
 +
'''NOTE:''' You can create the value for ''ECPassword'' like that:
 +
 
 +
  echo -n yourpasswordhere | md5sum | cut -d ' ' -f 1
 +
 
 +
== How can I receive a mail every day with a summary of the files amuled downloaded? ==
 +
 
 +
First, create [[Making a handy amulecmd script|this]] script and verify that it works properly. Then you can add it to your cron in the same way as shown above. Many cron-daemons will mail output of a script to your user. You can also use utilities like sendmail to mail the output of the script.
 +
 
 +
== Usefull Scripts ==
 +
 
 +
=== Show downloads in a nicely formatted list ===
 +
 +
#!/bin/sh
 +
amulecmd -c "show dl" | \
 +
grep '.' | \
 +
sed "1,/Succeeded/d" | \
 +
sed -n "N;s/^ > .*[0-9A-F]\{32\} \(.*\)\n >.*\[\(.*%\)\].*]\(.*\)/\2 \1\3/p" | \
 +
sort -n
 +
 
 +
=== Call amulecmd from the commandline without mess ===
 +
 
 +
#!/bin/sh
 +
amulecmd -c "$*"
 +
 
 +
save this script as "amc" and chmod +x it, then you can call amulecmd like this:
 +
 
 +
./amc show log
 +
 
 +
or pipe the output into another program
 +
 
 +
./amc show log | grep completed
 +
 
 +
I find this slightly easier than the original
 +
 
 +
amulecmd -c "show log" | grep completed.
 +
 
  
'''I cannot connect to [[aMuled]]. It seems [[aMuled]] does not create the listening port for connecting to it :-\?'''
+
===Search for results, until no more can be found===
  
You have probably not enabled [[External Connections]] in ''~/.eMule<br>
+
#!/bin/sh
'''NOTE:''' If setting a value for the ''ECPassword'' doesn't seem to work, it might work with no password.
+
echo Searching for $1
 +
amulecmd -c "search kad $1" > /dev/null
 +
prevres=-1
 +
matchcount=0
 +
for c in `seq 1 10`;
 +
do
 +
  sleep 5
 +
  res=`amulecmd -c "results" | grep results: | sed "s/.*results: \(.*\)$/\1/"`
 +
  if [ $res == $prevres ]
 +
  then
 +
  (( matchcount += 1 ))
 +
  if [ $matchcount -gt 1 ]
 +
  then
 +
    matchcount=0
 +
    break
 +
  fi
 +
  else
 +
  matchcount=0
 +
  prevres=$res
 +
  fi
 +
done

Latest revision as of 09:53, 15 April 2009

English |

Deutsch

How can I configure amulecmd to schedule actions? (Linux)

You have to configure such jobs with crontab. Let's do it by example:

bash ~# crontab -e
00 6   * * * amulecmd -c "set bwlimit up 30"
00 22 * * * amulecmd -c "set bwlimit up 0"

Will set your download bandwith limit to 30 kb/s on 6:00am and unlimited on 10:00pm. For more possibilities see also aMuleCMD.

I cannot connect to aMuled. It seems aMuled does not create the listening port for connecting to it :-\?

You have probably not enabled External Connections in ~/.aMule/amule.conf

NOTE: You can create the value for ECPassword like that:

 echo -n yourpasswordhere | md5sum | cut -d ' ' -f 1

How can I receive a mail every day with a summary of the files amuled downloaded?

First, create this script and verify that it works properly. Then you can add it to your cron in the same way as shown above. Many cron-daemons will mail output of a script to your user. You can also use utilities like sendmail to mail the output of the script.

Usefull Scripts

Show downloads in a nicely formatted list

#!/bin/sh
amulecmd -c "show dl" | \
grep '.' | \
sed "1,/Succeeded/d" | \
sed -n "N;s/^ > .*[0-9A-F]\{32\} \(.*\)\n >.*\[\(.*%\)\].*]\(.*\)/\2 \1\3/p" | \
sort -n

Call amulecmd from the commandline without mess

#!/bin/sh
amulecmd -c "$*"

save this script as "amc" and chmod +x it, then you can call amulecmd like this:

./amc show log

or pipe the output into another program

./amc show log | grep completed

I find this slightly easier than the original

amulecmd -c "show log" | grep completed.


Search for results, until no more can be found

#!/bin/sh
echo Searching for $1
amulecmd -c "search kad $1" > /dev/null
prevres=-1
matchcount=0
for c in `seq 1 10`;
do
 sleep 5
 res=`amulecmd -c "results" | grep results: | sed "s/.*results: \(.*\)$/\1/"`
 if [ $res == $prevres ]
 then
  (( matchcount += 1 ))
  if [ $matchcount -gt 1 ]
  then
   matchcount=0
   break
  fi
 else
  matchcount=0
  prevres=$res
 fi
done