View previous topic :: View next topic |
Author |
Message |
Tiro l33t
Joined: 14 Feb 2003 Posts: 752 Location: italy
|
Posted: Fri Dec 10, 2004 4:29 pm Post subject: [TIP] visualizzare al meglio i file di conf |
|
|
spero che questo tip non sia già stato scritto ... e che sia di vostro gradimento...
per chi non ama scorrere i file di configurazione lunghi a causa dei commenti e righe vuote oppure per chi vuole postare sul forum i file di configurazioni in maniera compatta io consiglio: "sguscia" !
Code: |
# nano /bin/sguscia
sed -e '/^$/d' -e '/^#/d' $*
# chmod 777 /bin/sguscia
|
i risultati sono da così:
Code: | # cat /etc/make.conf
# Copyright 2000-2003 Daniel Robbins, Gentoo Technologies, Inc.
# Contains local system settings for Portage system
# $Header: /home/cvsroot/gentoo-src/portage/cnf/make.conf,v 1.70 2004/01/12 07:34:38 carpaski Exp $
# Please review 'man make.conf' for more information.
# Build-time functionality
# ========================
#
# The USE variable is used to enable optional build-time functionality. For
# example, quite a few packages have optional X, gtk or GNOME functionality
# that can only be enabled or disabled at compile-time. Gentoo Linux has a
# very extensive set of USE variables described in our USE variable HOWTO at
# http://www.gentoo.org/doc/use-howto.html
#
# The available list of use flags with descriptions is in your portage tree.
# Use 'less' to view them: --> less /usr/portage/profiles/use.desc <--
#
# 'ufed' is an ncurses/dialog interface available in portage to make handling
# useflags for you. 'emerge app-admin/ufed'
#
# Example:
LANG='39'
USE="X alsa fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 mmx fxsr sse syscall mmxext 3dnowex mmx2 g77 samba arts kde -unicode 3dnow dvd xvid divx4linux kahakai real live"
# Host Setting
# ============
#
# If you are using a Pentium Pro or greater processor, leave this line as-is;
# otherwise, change to i586, i486 or i386 as appropriate. All modern systems
# (even Athlons) should use "i686-pc-linux-gnu". All K6's are i586.
#
COMPILER="diet"
CHOST="i686-pc-linux-gnu"
# Host and optimization settings
# ==============================
#
# For optimal performance, enable a CFLAGS setting appropriate for your CPU.
#
# Please note that if you experience strange issues with a package, it may be
# due to gcc's optimizations interacting in a strange way. Please test the
# package (and in some cases the libraries it uses) at default optimizations
# before reporting errors to developers.
#
# -mcpu=<cpu-type> means optimize code for the particular type of CPU without
# breaking compatibility with other CPUs.
#
# -march=<cpu-type> means to take full advantage of the ABI and instructions
# for the particular CPU; this will break compatibility with older CPUs (for
# example, -march=athlon-xp code will not run on a regular Athlon, and
# -march=i686 code will not run on a Pentium Classic.
#
# CPU types supported in gcc-3.2 and higher: athlon-xp, athlon-mp,
# athlon-tbird, athlon, k6, k6-2, k6-3, i386, i486, i586 (Pentium), i686
# (PentiumPro), pentium, pentium-mmx, pentiumpro, pentium2 (Celeron),
# pentium3, and pentium4.
#
# Note that Gentoo Linux 1.4 and higher include at least gcc-3.2.
#
# CPU types supported in gcc-2.95*: k6, i386, i486, i586 (Pentium), i686
# (Pentium Pro), pentium, pentiumpro Gentoo Linux 1.2 and below use gcc-2.95*
#
# CRITICAL WARNINGS: ****************************************************** #
# K6 markings are deceptive. Avoid setting -march for them. See Bug #24379. #
# ************************************************************************* #
#
# Decent examples:
#
CFLAGS="-mcpu=athlon-xp -O3 -pipe -fomit-frame-pointer"
#CFLAGS="-march=pentium3 -O3 -pipe"
# If you set a CFLAGS above, then this line will set your default C++ flags to
# the same settings.
CXXFLAGS="${CFLAGS}"
# Advanced Masking
# ================
#
# Gentoo is using a new masking system to allow for easier stability testing
# on packages. KEYWORDS are used in ebuilds to mask and unmask packages based
# on the platform they are set for. A special form has been added that
# indicates packages and revisions that are expected to work, but have not yet
# been approved for the stable set. '~arch' is a superset of 'arch' which
# includes the unstable, in testing, packages. Users of the 'x86' architecture
# would add '~x86' to ACCEPT_KEYWORDS to enable unstable/testing packages.
# '~ppc', '~sparc' are the unstable KEYWORDS for their respective platforms.
#
# Please note that this is not for development, alpha, beta, nor cvs release
# packages. "Broken" packages will not be added to testing and should not be
# requested to be added. Alternative routes are available to developers
# for experimental packages, and it is at their discretion to use them.
#
# DO NOT PUT ANYTHING BUT YOUR SPECIFIC ~ARCHITECTURE IN THE LIST.
# IF YOU ARE UNSURE OF YOUR ARCH, OR THE IMPLICATIONS, DO NOT MODIFY THIS.
#
#ACCEPT_KEYWORDS="~x86"
# Portage Directories
# ===================
#
# Each of these settings controls an aspect of portage's storage and file
# system usage. If you change any of these, be sure it is available when
# you try to use portage. *** DO NOT INCLUDE A TRAILING "/" ***
#
# PORTAGE_TMPDIR is the location portage will use for compilations and
# temporary storage of data. This can get VERY large depending upon
# the application being installed.
#PORTAGE_TMPDIR=/var/tmp
#
# PORTDIR is the location of the portage tree. This is the repository
# for all profile information as well as all ebuilds. This directory
# itself can reach 200M. WE DO NOT RECOMMEND that you change this.
#PORTDIR=/usr/portage
#
# DISTDIR is where all of the source code tarballs will be placed for
# emerges. The source code is maintained here unless you delete
# it. The entire repository of tarballs for gentoo is 9G. This is
# considerably more than any user will ever download. 2-3G is
# a large DISTDIR.
#DISTDIR=${PORTDIR}/distfiles
#
# PKGDIR is the location of binary packages that you can have created
# with '--buildpkg' or '-b' while emerging a package. This can get
# upto several hundred megs, or even a few gigs.
#PKGDIR=${PORTDIR}/packages
#
# PORT_LOGDIR is the location where portage will store all the logs it
# creates from each individual merge. They are stored as YYMMDD-$PF.log
# in the directory specified. This is disabled until you enable it by
# providing a directory. Permissions will be modified as needed IF the
# directory exists, otherwise logging will be disabled.
#PORT_LOGDIR=/var/log/portage
#
# PORTDIR_OVERLAY is a directory where local ebuilds may be stored without
# concern that they will be deleted by rsync updates. Default is not
# defined.
#PORTDIR_OVERLAY=/usr/local/portage
# Fetching files
# ==============
#
# If you need to set a proxy for wget or lukemftp, add the appropriate "export
# ftp_proxy=<proxy>" and "export http_proxy=<proxy>" lines to /etc/profile if
# all users on your system should use them.
#
# Portage uses wget by default. Here are some settings for some alternate
# downloaders -- note that you need to merge these programs first before they
# will be available.
#
# Default fetch command (5 tries, passive ftp for firewall compatibility)
#FETCHCOMMAND="/usr/bin/wget -t 5 --passive-ftp \${URI} -P \${DISTDIR}"
#RESUMECOMMAND="/usr/bin/wget -c -t 5 --passive-ftp \${URI} -P \${DISTDIR}"
#
# Using wget, ratelimiting downloads
#FETCHCOMMAND="/usr/bin/wget -t 5 --passive-ftp --limit-rate=200k \${URI} -P \${DISTDIR}"
#RESUMECOMMAND="/usr/bin/wget -c -t 5 --passive-ftp --limit-rate=200k \${URI} -P \${DISTDIR}"
#
# Lukemftp (BSD ftp):
#FETCHCOMMAND="/usr/bin/lukemftp -s -a -o \${DISTDIR}/\${FILE} \${URI}"
#RESUMECOMMAND="/usr/bin/lukemftp -s -a -R -o \${DISTDIR}/\${FILE} \${URI}"
#
# Prozilla (turbo downloader)
#FETCHCOMMAND='/usr/bin/proz --no-getch -s ${URI} -P ${DISTDIR}'
#
# Portage uses GENTOO_MIRRORS to specify mirrors to use for source retrieval.
# The list is a space seperated list which is read left to right. If you use
# another mirror we highly recommend leaving the default mirror at the end of
# the list so that portage will fall back to it if the files cannot be found
# on your specified mirror. We _HIGHLY_ recommend that you change this setting
# to a nearby mirror by merging and using the 'mirrorselect' tool.
GENTOO_MIRRORS="http://www.die.unipd.it/pub/Linux/distributions/gentoo-sources/"# http://gentoo.oregonstate.edu http://www.ibiblio.org/pub/Linux/distributions/gentoo"
#
# Portage uses PORTAGE_BINHOST to specify mirrors for prebuilt-binary packages.
# The list is a single extry specifying the full address of the directory
# serving the tbz2's for your system. Running emerge with either '--getbinpkg'
# or '--getbinpkgonly' will cause portage to retrieve the metadata from all
# packages in the directory specified, and use that data to determine what will
# be downloaded and merged. '-g' or '-gK' are the recommend parameters. Please
# consult the man pages and 'emerge --help' for more information.
#PORTAGE_BINHOST="ftp://login:pass@grp.mirror.site/pub/grp/i686/athlon-xp/"
#PORTAGE_BINHOST="http://grp.mirror.site/gentoo/grp/1.4/i686/athlon-xp/"
# Synchronizing Portage
# =====================
#
# Each of these settings effects how Gentoo synchronizes your Portage tree.
# Synchronization is handled by rsync and these settings allow some control
# over how it is done.
#
#
# SYNC is the server used by rsync to retrieve a localized rsync mirror
# rotation. This allows you to select servers that are geographically
# close to you, yet still distribute the load over a number of servers.
# Please do not single out specific rsync mirrors. Doing so places undue
# stress on particular mirrors. Instead you may use one of the following
# continent specific rotations:
#
# Default: "rsync://rsync.gentoo.org/gentoo-portage"
# North America: "rsync://rsync.namerica.gentoo.org/gentoo-portage"
# South America: "rsync://rsync.samerica.gentoo.org/gentoo-portage"
# Europe: "rsync://rsync.europe.gentoo.org/gentoo-portage"
# Asia: "rsync://rsync.asia.gentoo.org/gentoo-portage"
# Australia: "rsync://rsync.au.gentoo.org/gentoo-portage"
#SYNC="rsync://rsync3.it.gentoo.org/gentoo-sources"
#
# RSYNC_RETRIES sets the number of times portage will attempt to retrieve
# a current portage tree before it exits with an error. This allows
# for a more successful retrieval without user intervention most times.
#RSYNC_RETRIES="3"
#
# RSYNC_TIMEOUT sets the length of time rsync will wait before it times out
# on a connection. Most users will benefit from this setting as it will
# reduce the amount of 'dead air' they experience when they run across
# the occasional, unreachable mirror. Dialup users might want to set this
# value up around the 300 second mark.
#RSYNC_TIMEOUT=180
# Advanced Features
# =================
#
# MAKEOPTS provides extra options that may be passed to 'make' when a
# program is compiled. Presently the only use is for specifying
# the number of parallel makes (-j) to perform. The suggested number
# for parallel makes is CPUs+1.
MAKEOPTS="-j2"
#
# PORTAGE_NICENESS provides a default increment to emerge's niceness level.
# Note: This is an increment. Running emerge in a niced environment will
# reduce it further. Default is unset.
PORTAGE_NICENESS=3
#
# AUTOCLEAN enables portage to automatically clean out older or overlapping
# packages from the system after every successful merge. This is the
# same as running 'emerge -c' after every merge. Set with: "yes" or "no".
# This does not affect the unpacked source. See 'noclean' below.
AUTOCLEAN="yes"
#
# FEATURES are settings that affect the functionality of portage. Most of
# these settings are for developer use, but some are available to non-
# developers as well.
#
# 'autoaddcvs' causes portage to automatically try to add files to cvs
# that will have to be added later. Done at generation times
# and only has an effect when 'cvs' is also set.
# 'buildpkg' causes binary packages to be created of all packages that
# are merged.
# 'ccache' enables ccache support via CC.
# 'cvs' feature for developers that causes portage to enable all
# cvs features (commits, adds) and all USE flags in SRC_URI
# will be applied for digests.
# 'digest' autogenerate a digest for packages.
# 'distcc' enables distcc support via CC.
# 'fixpackages' allows portage to fix binary packages that are stored in
# PKGDIR. This can consume a lot of time. 'fixpackages' is
# also a script that can be run at any given time to force
# the same actions.
# 'keeptemp' prevents the clean phase from deleting the temp files ($T)
# from a merge.
# 'keepwork' prevents the clean phase from deleting the WORKDIR.
# 'noauto' causes ebuild to perform only the action requested and
# not any other required actions like clean or
# 'noclean' prevents portage from removing the source and temporary files
# after a merge -- for debugging purposes only.
# 'nostrip' prevents stripping of binaries.
# 'notitles' disables xterm titlebar updates (which contain status info).
# 'sandbox' enable sandbox-ing when running emerge and ebuild
# 'strict' causes portage to react strongly to conditions that
# have the potential to be dangerous -- like missing or
# incorrect Manifest files.
# 'userpriv' allows portage to drop root privleges while it is compiling
# as a security measure, and as a side effect this can remove
# sandbox access violations for users.
# 'usersandbox' enables sandboxing while portage is running under userpriv.
# unpack -- for debugging purposes only.
#FEATURES="sandbox buildpkg ccache distcc userpriv usersandbox notitles noclean noauto cvs keeptemp keepwork"
#
# CCACHE_SIZE sets the space use limitations for ccache. The default size is
# 2G, and will be set if not defined otherwise and ccache is in features.
# Portage will set the default ccache dir if it is not present in the
# user's environment, for userpriv it sets: ${PORTAGE_TMPDIR}/ccache
# (/var/tmp/ccache), and for regular use the default is /root/.ccache.
# Sizes are specified with 'G' 'M' or 'K'.
# '4G' for 4 gigabytes, '4096M' for 4 gigabytes, etc... Default is 2G
#CCACHE_SIZE="2G"
#
# DISTCC_DIR sets the temporary space used by distcc.
#DISTCC_DIR="${PORT_TMPDIR}/.distcc"
#
# RSYNC_EXCLUDEFROM is a file that portage will pass to rsync when it updates
# the portage tree. Specific chucks of the tree may be excluded from
# consideration. This may cause dependency failures if you are not careful.
# The file format is one pattern per line, blanks and ';' or '#' lines are
# comments. See 'man rsync' for more details on the exclude-from format.
#RSYNC_EXCLUDEFROM=/etc/portage/rsync_excludes
CONFIG_PROTECT="/etc/make.conf /etc/lilo.conf /etc/conf.d/hdparm /etc/crontab /etc/profile /etc/fstab /etc/group /etc/passwd /etc/shadow /etc/init.d/modules /etc/conf.d/rc /etc/conf/net /etc/X11/xorg.conf /etc/ssmtp/ssmtp.conf"
|
...a così:
Code: | # sguscia /etc/make.conf
LANG='39'
USE="X alsa fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 mmx fxsr sse syscall mmxext 3dnowex mmx2 g77 samba arts kde -unicode 3dnow dvd xvid divx4linux kahakai real live"
COMPILER="diet"
CHOST="i686-pc-linux-gnu"
CFLAGS="-mcpu=athlon-xp -O3 -pipe -fomit-frame-pointer"
CXXFLAGS="${CFLAGS}"
MAKEOPTS="-j2"
PORTAGE_NICENESS=3
AUTOCLEAN="yes"
CONFIG_PROTECT="/etc/make.conf /etc/lilo.conf /etc/conf.d/hdparm /etc/crontab /etc/profile /etc/fstab /etc/group /etc/passwd /etc/shadow /etc/init.d/modules /etc/conf.d/rc /etc/conf/net /etc/X11/xorg.conf /etc/ssmtp/ssmtp.conf"
|
Last edited by Tiro on Fri Dec 10, 2004 11:10 pm; edited 1 time in total |
|
Back to top |
|
|
fedeliallalinea Administrator
Joined: 08 Mar 2003 Posts: 31372 Location: here
|
Posted: Fri Dec 10, 2004 4:38 pm Post subject: |
|
|
Nei nuovi livecd il make.conf e' senza commenti e piccolissimo. Quello che hai tu si trova in make.conf.example _________________ Questions are guaranteed in life; Answers aren't. |
|
Back to top |
|
|
Tiro l33t
Joined: 14 Feb 2003 Posts: 752 Location: italy
|
Posted: Fri Dec 10, 2004 4:58 pm Post subject: |
|
|
Quote: | Nei nuovi livecd il make.conf e' senza commenti e piccolissimo. Quello che hai tu si trova in make.conf.example |
..beh in verità la prova sul make.conf era solo un esempio.. |
|
Back to top |
|
|
fedeliallalinea Administrator
Joined: 08 Mar 2003 Posts: 31372 Location: here
|
Posted: Fri Dec 10, 2004 5:10 pm Post subject: |
|
|
Tiro wrote: | ..beh in verità la prova sul make.conf era solo un esempio.. |
Si si chiaro. Mi sono spiegato male. E' un ottimo tip per postare le varie configurazioni sul forum senza mettere i commenti cosi' avremo post un po' piu' light _________________ Questions are guaranteed in life; Answers aren't. |
|
Back to top |
|
|
FonderiaDigitale Veteran
Joined: 06 Nov 2003 Posts: 1710 Location: Rome, Italy
|
Posted: Fri Dec 10, 2004 6:38 pm Post subject: |
|
|
mio piccolo contributo (partorito per l'occasione )
readme
Code: | readme ()
{
while [ $1 ]; do
echo -en "\nFile \033[1;37m$1\033[0m"
if [ ! -r $1 ]; then
echo " is not readable!"
else
echo
for ((a=0;a < ((${#1}+7));a++)); do echo -n -; done
echo
while read -a line; do
if [[ ! ${line[*]} =~ "^(#|!|;|//).*$|^( *)$" ]]; then
echo "${line[*]}";
fi
done < $1
fi
shift
done
} |
per usarlo, includerlo in /etc/bashrc o ~/.bashrc.
caratteristiche salienti:
- Possono essere visualizzati tot file passati come parametro alla funzione
- Parsing dei commenti standard ( #), c ( // ); tipo samba ( ; ), tipo TCL ( ! )
- puo' essere passato a less per paging.
_________________ Come disse un amico, i sistemisti sono un po' come gli artigiani per l'informatica
|
|
Back to top |
|
|
fedeliallalinea Administrator
Joined: 08 Mar 2003 Posts: 31372 Location: here
|
Posted: Fri Dec 10, 2004 6:56 pm Post subject: |
|
|
@FonderiaDigitale: Sei sicuro che funziona? _________________ Questions are guaranteed in life; Answers aren't. |
|
Back to top |
|
|
FonderiaDigitale Veteran
Joined: 06 Nov 2003 Posts: 1710 Location: Rome, Italy
|
Posted: Fri Dec 10, 2004 6:57 pm Post subject: |
|
|
sul mio sistema funziona. _________________ Come disse un amico, i sistemisti sono un po' come gli artigiani per l'informatica
|
|
Back to top |
|
|
fedeliallalinea Administrator
Joined: 08 Mar 2003 Posts: 31372 Location: here
|
Posted: Fri Dec 10, 2004 6:58 pm Post subject: |
|
|
Ma la linea
Code: | if [[ ! ${line[*]} =~ "^(#|!|;|//).*$|^( *)$" ]] |
non dovrebbe gia' avere degli spazi cosi'
Code: | if [ [ ! ${line[*]} =~ "^(#|!|;|//).*$|^( *)$" ] ] |
_________________ Questions are guaranteed in life; Answers aren't. |
|
Back to top |
|
|
FonderiaDigitale Veteran
Joined: 06 Nov 2003 Posts: 1710 Location: Rome, Italy
|
Posted: Fri Dec 10, 2004 7:00 pm Post subject: |
|
|
>=bash 3 _________________ Come disse un amico, i sistemisti sono un po' come gli artigiani per l'informatica
|
|
Back to top |
|
|
fedeliallalinea Administrator
Joined: 08 Mar 2003 Posts: 31372 Location: here
|
Posted: Fri Dec 10, 2004 7:01 pm Post subject: |
|
|
FonderiaDigitale wrote: | >=bash 3 |
A ecco il trucco. Comunque con la app-shells/bash-2.05b-r9 non va
EDIT: Anche il for alla C e' solo per bash 3 _________________ Questions are guaranteed in life; Answers aren't. |
|
Back to top |
|
|
FonderiaDigitale Veteran
Joined: 06 Nov 2003 Posts: 1710 Location: Rome, Italy
|
Posted: Fri Dec 10, 2004 10:14 pm Post subject: |
|
|
attento xche molti script gentoo compreso il baselayout ~x86 ormai chiedono la versione 3. _________________ Come disse un amico, i sistemisti sono un po' come gli artigiani per l'informatica
|
|
Back to top |
|
|
fedeliallalinea Administrator
Joined: 08 Mar 2003 Posts: 31372 Location: here
|
Posted: Fri Dec 10, 2004 10:15 pm Post subject: |
|
|
FonderiaDigitale wrote: | attento xche molti script gentoo compreso il baselayout ~x86 ormai chiedono la versione 3. |
A ecco comunque io giro in x86 quindi non mi preoccupo _________________ Questions are guaranteed in life; Answers aren't. |
|
Back to top |
|
|
silian87 Advocate
Joined: 06 Oct 2003 Posts: 2318 Location: Treviso, Italy
|
Posted: Fri Dec 10, 2004 10:56 pm Post subject: |
|
|
cmq io levo sempre il make.conf per mettere il make.conf.example... mi piace molto di piu', con i commenti si capisce molto meglio ed e' piu' semplice aggiungere nuove opzioni. Non penso sia una buona idea levare i commenti... cmq IMHO _________________ Musica che ascolto: http://www.last.fm/user/silian87/
Silian87 FAQs: http://marentax.homelinux.org/~silian87/silian87-faq.txt
GTalk: silian87@gmail.com |
|
Back to top |
|
|
fedeliallalinea Administrator
Joined: 08 Mar 2003 Posts: 31372 Location: here
|
Posted: Fri Dec 10, 2004 10:59 pm Post subject: |
|
|
beh ma nel tuo lasci senza commenti quando vuoi aggiungere qualcosa vai nel file di esempio a vedere _________________ Questions are guaranteed in life; Answers aren't. |
|
Back to top |
|
|
Kernel78 Moderator
Joined: 24 Jun 2005 Posts: 3654
|
Posted: Wed Mar 29, 2006 9:27 am Post subject: |
|
|
Uppo questo topic perchè l'ho trovato adesso e volevo contribuire.
Il metodo che uso io mi piace perchè semplice e funzionale, mi sono fatto un alias (chiamiamolo "sguscia" in onore all'autore della discussione) per Code: | grep -vE '(^[[:space:]]*$|^[[:space:]]*(#|!|;|//))' |
e si può decommentare un file di questo tipo Code: | $ dog commenti
prima riga
#commento
!commento
#commento
;commento
seconda riga
terza riga
//commento
;commento
!commento
|
con commenti di ogni tipo e ottenere
Code: | $ sguscia commenti
prima riga
seconda riga
terza riga
|
Spero possa essere utile a qualcuno. _________________ Le tre grandi virtù di un programmatore: pigrizia, impazienza e arroganza. (Larry Wall).
Prima di postare un file togli i commenti con Code: | grep -vE '(^[[:space:]]*($|(#|!|;|//)))' |
|
|
Back to top |
|
|
Luca89 Advocate
Joined: 27 Apr 2005 Posts: 2107 Location: Agrigento (Italy)
|
Posted: Wed Mar 29, 2006 2:02 pm Post subject: |
|
|
bel trucchetto, non lo sapevo. _________________ Running Fast! |
|
Back to top |
|
|
[PHT]Giangi Tux's lil' helper
Joined: 27 Dec 2004 Posts: 110 Location: Rome - ITALY -
|
Posted: Fri Apr 14, 2006 7:50 am Post subject: |
|
|
Luca89 wrote: | bel trucchetto, non lo sapevo. |
Si è vero .... utile. _________________ Powered by : Gentoo Linux on PowerMac G5 2 CPU 2.00GHz. |
|
Back to top |
|
|
|