PDA

View Full Version : Creare un "eseguibile" per comandi terminale


riell
18-12-2008, 09:50
Salve a tutti,
sono assolutamente ignorante in termini di programmazione mac, ma avrei la necessità di automatizzare dei comandi terminale che mi risolvono certi problemi network verificatisi dopo l'ultimo aggiornamento.

Il primo problema è che non riesco più ad inviare email con allegati gmail sia tramite il sito di gmail sia tramite smtp gmail (quando sono al lavoro -provider alice business- mentre a casa - fastweb- è tutto ok).

Altro problema è che quando gioco a World of Warcraft dopo esattamente 10 minuti avviene del lag e dopo poco si disconnette.

Ho scoperto che con questi comandi risolvo ENTRAMBI i problemi.

Vorrei sapere se è possibile creare una specie di "eseguibile" invece di doverli inserire uno ad uno in terminale, siccome si resettano ogni volta che spengo il computer (e NON voglio renderli permanenti).

I comandi sono questi:

sudo sysctl -w net.inet.tcp.rfc1323=0
sudo sysctl -w net.inet.tcp.recvspace=32768
sudo sysctl -w net.inet.tcp.sendspace=32768
sudo sysctl -w net.inet.tcp.win_scale_factor=1
sudo sysctl -w net.inet.tcp.sockthreshold=0

Spero possiate aiutarmi,
grazie e ciao!

Mailor
18-12-2008, 10:20
da terminale, non da root, digita vim antilag.sh

ti si aprirà vim, un programma che scrive formati binari di testo senza cavolate particolari (header rtf etc).

i comandi per usarlo sono da tastiera, e corripondono alla pressione dei tasti:

i : attiva l'inserimento del testo. scrivendo, editerai di fatto il file antilag.sh (che inizialmente sarà vuoto)

<esc> : se pigi esc esci dalla modalità di inserimento testo

:w (duepunti w) salva il file editato (dopo aver premuto esc)
:q (duepunti q) esce

:wq salva ed esce

detto questo, dopo aver dato il comando da terminale, con vim davati

premi i

scrivi

#!/bin/bash

sudo sysctl -w net.inet.tcp.rfc1323=0
sudo sysctl -w net.inet.tcp.recvspace=32768
sudo sysctl -w net.inet.tcp.sendspace=32768
sudo sysctl -w net.inet.tcp.win_scale_factor=1
sudo sysctl -w net.inet.tcp.sockthreshold=0

premi esc

digita :wq

ora sarai tornato alla console. digita chmod +x antilag.sh, così che diventi un file eseguibile.

ora la situazione è questa:

il tuo utente è proprietario di un file che risiede nella tua home. questo file è uno script bash che esegue i comandi che hai indicato.

per avviarlo devi solo aprire il terminale e digitare ./antilag.sh

spero di non aver dimenticato nulla.

riell
18-12-2008, 12:12
Wow Fanstatico! Provo e poi ti so dire se va tutto a buon fine.

Grazie mille!

riell
29-12-2008, 11:14
vorrei confermare che funziona tutto perfettamente e ancora un grazie a Mailor per il suo preziosissimo aiuto!